我有一张A桌
ID SALN INDICATOR
1 100 A
2 100 B
3 200 A
4 200 C
5 100 c
6 300 B
7 200 D在按SALN分组之后,我需要从表A中提取SALN,并且该组仅具有指标A、B、C
SALN
100请让我知道这个的SQL
发布于 2015-06-14 03:12:04
select saln
from A
where indicator in('A','B','C')
group by saln
having sum(indicator) = 100发布于 2015-06-14 03:08:35
select saln
from your_table
group by saln
having sum(indicator not in ('A','B','C')) = 0如果您还需要检查SALN的A、B和C是否存在,则添加
and sum(indicator = 'A') > 0
and sum(indicator = 'B') > 0
and sum(indicator = 'C') > 0添加到查询的末尾。
发布于 2015-06-14 03:19:35
如果你想要这三个值,你可以这样做:
select saln
from A
where indicator in ('A', 'B', 'C')
group by saln
having count(*) = 3;如果可以有重复项,则使用:
having count(distinct indicator) = 3如果您想要A、B和C,而不需要其他值,那么一种方法是:
select saln
from A
group by saln
having count(distinct case when indicator in ('A', 'B', 'C') then indicator end) = 3;https://stackoverflow.com/questions/30822460
复制相似问题