Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/58.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
MYSQL选择交互数据?_Mysql_Sql - Fatal编程技术网

MYSQL选择交互数据?

MYSQL选择交互数据?,mysql,sql,Mysql,Sql,我有一个名为Follow的表,其中有三个字段: Id(自动增量整数) 用户ID(int) 以下(int) 如果我有这样的数据: ID UserId Following -------------------------- 1 2 3 2 3 2 3 2 5 4 2 6 5 3 5 我如何找到用户2的朋友(即:用户2在跟踪他们

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

  • Id(自动增量整数)
  • 用户ID(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

试试这个:

select f1.UserId
from Follow f1
join Follow f2 on f2.Following = f1.UserId and f2.UserId = f1.Following
SELECT a.UserId, a.Following
  FROM Follow a INNER JOIN Follow b
    ON a.UserId = b.Following
   AND b.UserId = a.Following
试试这个:

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