gpt4 book ai didi

mysql - SQL按乘值选择和过滤

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

你能帮我解决我的问题吗?

我有 table :

id     | party_id |  tag_id
_______|__________|__________
1 | 5 | 1
2 | 5 | 2
3 | 5 | 3
4 | 7 | 1
5 | 7 | 6
6 | 7 | 8
7 | 7 | 9
8 | 9 | 7
9 | 9 | 6

我需要得到一个表,其中的值是相同的 parties_id 严格传递标签(如过滤):

例子:

tag_id = 1 和 3

我应该得到:

party_id = 5

问题是我不能使用 WHERE IN 因为是 OR 运算符,但我需要 AND

对于这个 SELECT,你推荐哪一个查询?

最佳答案

我建议使用 group byhaving 子句。这就是所谓的“集合内集合”查询。这是一个例子:

select party_id
from table t
group by party_id
having sum(tag_id = 1) > 0 and sum(tag_id = 3) > 0;

having 子句中的每个条件都会计算给定 party_id 的特定类型标签的数量。 > 0 确保至少存在一个。

关于mysql - SQL按乘值选择和过滤,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25343414/

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