【发布时间】:2014-01-06 11:35:51
【问题描述】:
我有表格组,
ID NUMBER
STATUS VARCHAR2(20 BYTE)
我可以统计如下状态数。
select g.status, count(*) from groups g group by g.status;
STATUS COUNT(*)
-------------------- ----------
OK 2
NOK 1
我还有另一个状态,比如 PENDING、REJECTED。但是表中不存在任何项目,但我希望它们以零计数显示,如下所示。
STATUS COUNT(*)
-------------------- ----------
OK 2
NOK 1
PENDING 0
REJECTED 0
使之成为可能的 SQL 语句是什么?
【问题讨论】:
-
不同的状态是否都在另一个表中?
-
没有Status表,
-
您无法显示不存在的信息。
-
您指定的查询将默认执行。您是否尝试在表格中插入这些状态?如果它显示为 NULL,请尝试使用 ISNULL(COL,REPLACE_VALUE)
标签: sql postgresql select count left-join