Почему Postgres Group By NULL не учитывает количество? - PullRequest
15 голосов
/ 13 января 2010

Я пытаюсь получить счетчик каждого значения в таблице, используя следующий SQL:

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

(в реальном коде есть предложение WHERE, но оно не влияет).

Когда я запускаю это, я получаю результаты примерно так:

a      - 5
b      - 4
<null> - 0

Неважно, сколько у меня пустых записей, всегда отображается число 0.

Любые идеипочему?

1 Ответ

35 голосов
/ 13 января 2010

Разобрался. Изменен код для использования COUNT (*) вместо COUNT (столбец).

COUNT (столбец) не считал нулевые строки, все другие методы агрегирования также удаляют пустые значения из набора результатов.

...