为什么Postgres Group不按NULL选择计数?

时间:2010-01-13 03:44:31

标签: sql postgresql null group-by

我试图使用以下SQL来计算表中的每个值:

SELECT col, COUNT(col)
FROM table 
GROUP BY col

(实际代码中有一个WHERE子句,但没有影响)。

当我运行时,我得到的结果如下:

a      - 5
b      - 4
<null> - 0

无论我有多少个空条目,它总是显示0的计数。

任何想法为什么?

1 个答案:

答案 0 :(得分:35)

想出来。 更改了代码以使用COUNT(*)而不是COUNT(col)。

COUNT(col)不计算任何空行,所有其他聚合方法也从结果集中消除空值。