【问题标题】:Why doesn't Postgres Group By NULL select counts?为什么 Postgres Group By NULL 不计数?
【发布时间】:2011-01-04 11:36:46
【问题描述】:

我正在尝试使用以下 SQL 获取表中每个值的计数:

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

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

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

a      - 5
b      - 4
<null> - 0

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

有什么想法吗?

【问题讨论】:

  • 注意:我有一个解决方法(我只是联合一个 SELECT null, count(*) FROM table WHERE col is null),但对我来说感觉就像是一个 hack。

标签: sql postgresql null group-by


【解决方案1】:

想通了。 将代码更改为使用 COUNT(*) 而不是 COUNT(col)。

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-09-28
    • 2011-06-03
    • 2018-04-30
    • 2019-05-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多