如何显示我的帖子以及MySQL的追随者帖子


how to Show my posts as well as followers posts MySQL

我正在尝试创建一个类似twitter的系统,用户可以在其中相互连接&那么他们将能够在后看到彼此

这是用户表

+-----+------------+---------+
|  id |  name      |username |
+-----+------------+---------+
|   1 | Phillip    | user1   |
|   2 | Another    | user2   |
+-----+------------+---------+

连接表

+---------+-----------+--------------+--------------+
|      id | follower  |  following   |     status   |
+---------+-----------+--------------+--------------+             
|       1 |  user1    |  user2       |       0      |
|       2 |  user3    |  user1       |       1      |
+---------+-----------+--------------+--------------+

后表

+---------+-----------+--------------+--------------+
| post_id | content   |     title    |    username  |
+---------+-----------+--------------+--------------+             
|       1 | hello guyz|      eg1     |     user1    |
|       2 | example1  |      eg 2    |     user2    |
+---------+-----------+--------------+--------------+

查询我尝试

SELECT
post.* 
FROM users
LEFT JOIN connection ON (users.username = connection.follower
 OR users.username = connection.following)
INNER JOIN messages ON (
  users.username = post.username
  OR connection.following = post.username
)
WHERE users.username = 'user1'
GROUP BY post.id
LIMIT 0, 8

这个查询可能有什么问题,因为这个查询也是不完整的

让您更好地理解->

假设我的名字是example&如果我向example2&他接受了我的请求,然后CCD_;他怎么能在他的时间轴

上看到我的帖子

对所需结果的查询是

SELECT * FROM `posts`
WHERE `username` = 'user1'
OR `username` IN (SELECT `follower` FROM `connection` WHERE `following`='user1' AND `status`=1)