可能重复:
MySQL 递归树搜索
我正在放置一个联系人搜索选项,因此用户最多可以搜索 10 个级别的联系人,例如,我可以搜索我的联系人的联系人,以及他的联系人的联系人等等,最多 10 个级别。
它可以通过太多的 sql 连接来完成,但我想知道是否有更好的解决方案
谢谢
编辑:这是架构
用户表id,用户名
联系表 id、user_id、contact_id
user_id 和contact_id 都是用户表的外键。
这是获取我的联系人的最高 1 级的简单查询
SELECT * FROM users LEFT JOIN contacts
ON users.id = contacts.user_id
WHERE users.id = MY_USER_ID