gpt4 book ai didi

sql - 从众多行中选择仅属于一个类别的行

转载 作者:行者123 更新时间:2023-12-04 07:40:30 24 4
gpt4 key购买 nike

假设有这张表 colors

ID
来源


1
红色的

1
绿色

1
橘子

2
红色的

2
红色的

3
黑色的

3
绿色

4
红色的

5
绿色


我要的是所有id的列表只有 source值 'red',所以 2 和 4。
要清楚

select distinct id from colors where source = 'red' 
将给出 1,2 和 4,其中 1 除了“红色”之外还有“绿色”和“橙色”,所以没有。
这里是创建表的SQL
create temp table colors as 
select *
from (values (1, 'red'),(1, 'green'),(1, 'orange'),(2,'red'),(2, 'red'),(3, 'black'),(3,'green'),(4,'red'),(5,'green'))
as t (id,source)
这个怎么查询?

最佳答案

使用聚合:

select id
from t
group by id
having count(*) filter (where color = 'red') = count(*);

关于sql - 从众多行中选择仅属于一个类别的行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67507394/

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