我试图使用以下SQL来计算表中的每个值:
SELECT col, COUNT(col)
FROM table
GROUP BY col
(实际代码中有一个WHERE子句,但没有影响)。
当我运行时,我得到的结果如下:
a - 5
b - 4
<null> - 0
无论我有多少个空条目,它总是显示0的计数。
任何想法为什么?
答案 0 :(得分:35)
想出来。 更改了代码以使用COUNT(*)而不是COUNT(col)。
COUNT(col)不计算任何空行,所有其他聚合方法也从结果集中消除空值。