如何创建一个建议用户的算法

时间:2012-08-31 19:29:57

标签: php mysql

我对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

有人可以帮助我吗?

1 个答案:

答案 0 :(得分: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更改为循环的变量。