16

是否有任何功能可以检查组中的列是否包含NULL,或者我将如何解决这个问题?数据结构示例如下。

id | value
----------
1  | NULL
1  | 56
2  | 98
2  | 14

结果:

id | value
----------
1  | 1
2  | 0
4

2 回答 2

23

尝试

select id, 
       count(*) - count(value) as null_value_count
from your_table
group by id

SQLFiddle 演示

于 2012-09-30T11:13:32.967 回答
12

另一种不使用count(value)忽略NULL值的事实的可能性:

select id, 
       sum(case when value is null then 1 else 0 end) as null_count
from your_table
group by id;
于 2012-09-30T11:35:09.053 回答