通过在列中没有空值来分组

时间:2017-08-22 10:46:29

标签: sql oracle

如果我执行以下查询

select a, bar.c from foo
left join bar on foo.id = bar.foo

我得到了这些结果

a   c
----------
1   1   
1   3
1   null

2   1
2   2

3   1
3   null
3   3
3   4

现在我想按a对这些值进行分组,但仅当b没有单个空值时,才能得到a = 2。我该怎么做?

1 个答案:

答案 0 :(得分:4)

您可以使用having

select a
from foo left join
     bar
     on foo.id = bar.foo
group by a
having count(*) = count(bar.c);