MYSQL选择往复数据?

时间:2011-06-07 02:12:43

标签: mysql sql

我有一个名为Follow的表,有三个字段:

  • Id(autoincrement int),
  • UserId(int),
  • 关注(int)

如果我有这样的数据:

ID    UserId    Following   
--------------------------
1       2          3
2       3          2
3       2          5
4       2          6
5       3          5

我如何找到用户2的朋友(即:用户2关注他们,他们关注用户2)

我想,换句话说,如果用户'a'跟随用户'b',而用户'b'跟随用户'a',我该如何选择用户A ??

2 个答案:

答案 0 :(得分:4)

试试这个:

SELECT a.UserId, a.Following
  FROM Follow a INNER JOIN Follow b
    ON a.UserId = b.Following
   AND b.UserId = a.Following

答案 1 :(得分:1)

select f1.UserId
from Follow f1
join Follow f2 on f2.Following = f1.UserId and f2.UserId = f1.Following