在mySQL中停止两次获得相同的结果

时间:2014-04-06 22:32:05

标签: mysql sql inner-join

我正在使用mySQL数据库进行微博客网站(如Twitter)。在该数据库中,我有三个表:一个用于用户,一个用于消息,一个用于控制谁跟随谁。当用户进入该网站时,我想显示他自己的消息以及他所关注的人的消息,因此我使用此查询:

SELECT * FROM messages 
INNER JOIN users ON users.id = messages.author 
INNER JOIN followers ON followers.main_user = 2 
WHERE messages.author = followers.followed_user OR messages.author = 2 
ORDER BY date DESC;

成为'2'进入网站的用户。

问题是我得到了两次进入(在本例中为2)的人所写的信息,并且从他跟随的人那里得到了一次。有没有人知道如何解决这个问题?用户2不跟随自己。

0 个答案:

没有答案