【发布时间】:2017-01-27 05:39:45
【问题描述】:
我有一个不知道的问题。
SELECT (
SELECT COUNT(bar.id)
FROM bar
WHERE foo.some_id = bar.some_id
) AS num_bar
FROM foo
GROUP BY some_id
如果 foo 看起来像这样:
ID|some_id
----------
1 |NULL
2 |apple
3 |orange
bar 看起来像这样
ID|some_id
----------
1 |NULL
2 |apple
3 |orange
4 |NULL
5 |apple
6 |orange
我希望它会返回:
num_bar
-------
2
2
2
但是,NULL分组的计数每次返回0。
当 group by 为 NULL 时,说明此 WHERE 子句的正确方法是什么?
【问题讨论】:
标签: sql postgresql group-by subquery