关注朋友的朋友建议MySQL

时间:2013-09-08 17:41:00

标签: php mysql sql pdo

我正在创建一个“关注建议”功能,我想随机展示朋友的朋友谁不是我的朋友。

user_friends表

friend_id | friend_one | friend_two | role

用户表

uiD | username 

对于用户关注它的每个朋友,都会创建两条记录。如果用户1和2成为朋友,则会创建记录,friend_one = 1& user_friends表中的friend_two = 2friend_id = ramdom AUTO_INCREMENT number role = fri

用户表,只有用户ID和用户名。

我如何根据朋友的朋友制作一个建议“跟随谁”的SQL查询?推特是怎么做的。

我尝试过的东西并没有完全奏效,即使对我来说似乎也没有多大意义。 http://pastebin.com/tCt6jdAZ< - 查询代码。 (不想在这里发帖,因为感觉没用)。

1 个答案:

答案 0 :(得分:0)

如果我理解你的问题是正确的:

您需要两次加入'user_friends'表:

select * from 
   user_friends level1,
   user_friends level2
where 
   level1.friend_two = level2.friend_one -- or opposite i am not sure if a understood your model
    and level1.friend_one = 'starting friend id'