0

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

user_friends 表

friend_id | friend_one | friend_two | role

用户表

uiD | username 

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

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

我将如何根据我朋友的朋友创建一个建议“关注谁”的 sql 查询?推特是如何做到的。

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

4

1 回答 1

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'
于 2013-09-08T20:09:47.360 回答