1

我对 Mysql 中的复杂查询没有非常先进的知识。

我有一个系统,用户可以互相关注并随时了解他的新闻。

我有两张表:一张用于用户,一张用于保持两个用户之间的连接。

我是否需要朋友提示系统,例如您建议的 Facebook 朋友。

我想做点什么。例如,我关注了一个特定的用户,而这关注了另一个用户,但我没有关注他关注的那个用户。我们三个来自圣保罗的同一个城镇,我想查询一个我仍然不关注的用户,因为他是我朋友的朋友,因为他和我在同一个城市。

我的桌子是:

tb_usuario
id | name  | city
1  | Halan | Sao Paulo
2  | John  | Sao Paulo
3  | Maria | Sao Paulo

tb_ligacao

id | user_id | id_usuario_seguido
1  | 1       | 2
2  | 2       | 3

有人能帮我吗?

4

1 回答 1

0

似乎您正在尝试查看谁是朋友的朋友。为此,请使用您的代码:

select * from tb_usario as a left join tb_ligacao as b on a.id = b.id_usuario_seguido where b.user_id = 1

上面的代码将为 ID 为 1 的用户获取所有朋友。要获取他们的所有朋友,您将循环并运行相同的代码,但将 ID 更改为循环的变量。

于 2012-08-31T19:41:34.860 回答