gpt4 book ai didi

mysql - 查询由只有某些 ID 而没有其他 ID 的记录共享的公共(public)列?

转载 作者:太空宇宙 更新时间:2023-11-03 10:36:12 24 4
gpt4 key购买 nike

我的数据库中有下表:

people_to_groups

id | personID | groupID
-------------------------
1 | 5 | 2
-------------------------
2 | 6 | 2
-------------------------
3 | 7 | 3
-------------------------
4 | 5 | 3
-------------------------
5 | 5 | 4
-------------------------
6 | 5 | 7
-------------------------
7 | 6 | 7

我正在尝试找出一个查询,该查询返回每个 groupID 仅包含 personID 5 和 6 而没有其他 personID

所以如果查询在上面的表上运行,它将返回以下结果集:

groupID
-------
2
-------
7

因为第 2 组和第 7 组是唯一有第 5 个人和第 6 个人的组,没有其他人。

(附言,如果有人能想到更好的标题,请提出修改建议)

最佳答案

要确保groupid既有5又有6,可以使用这三个规则:
1 - 最大值为 6
2 - 最小值为 5
3 - Distinct personid 的计数为 2

SELECT groupID
FROM people_to_groups
GROUP BY groupID
HAVING MAX(personID) = 6
AND MIN(personID) = 5
AND COUNT(DISTINCT personID) = 2;

关于mysql - 查询由只有某些 ID 而没有其他 ID 的记录共享的公共(public)列?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48030134/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com