本文主要是介绍MySQL如何查出两个用户的共同粉丝,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
在QQ中我们可以看到”共同好友”的功能。在微博中我们也可以看到“共同关注”的功能。这些功能其实原理都是一样的。都是查询两个用户的关注列表中是否有相同的属性。
下面我们来看一下如何查出两个用户的共同粉丝。
我们的例子中用到了两张表。一张是用户表(user)。另一张是粉丝表(follower),即某用户有哪些粉丝。这两张表中的数据如下图所示:
用户1有粉丝2、3、4。
用户2有粉丝1、3 、4 。
用户1和用户2有公共的粉丝3、4。
那么我们如何将用户1和用户2的共同粉丝查询出来呢?
答案是使用 IN 关键字。
SELECT follower_id FROM follower
WHERE user_id=1 AND follower_id IN(SELECT follower_id FROM follower WHERE user_id=2);
解释一下上面的SQL语句。首先查出用户2的粉丝id列表。然后查询用户1的粉丝id列表,并且最终返回 在用户2的粉丝列表中也存在的 那些用户1的粉丝id。(即,只返回 同时存在于用户1和用户2的粉丝列表中的 粉丝id)
查询结果如下:
e
这篇关于MySQL如何查出两个用户的共同粉丝的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!