我要获取从用户id引用另一个用户的用户的id,请参阅以下示例数据:

     | user_id | refered |
     |---------+---------|
     |     780 |       1 |
     |     781 |     780 |
     |     782 |     781 |
     |     783 |         |
     |     784 |         |

这是我正在使用的查询,但我想从数据库而不是会话中获取用户id,我如何才能做到这一点?
SELECT * FROM  user where refered = '".$_SESSION['userid']."'

我也试过这个,但也没用:
 SELECT * FROM  user where refered = user_id

我想获取从用户id引用另一个用户的用户的id

最佳答案

若要获取所有推荐过某人的用户,请按如下所示对表本身进行JOIN

SELECT b.user_id, b.refered
FROM user a JOIN user b ON a.user_id = b.refered;

如果一个用户引用了多个用户,则上述查询将返回同一个用户两次。

10-06 03:52