2011-02-18 179 views
21

如何在MySQL查询中使用COUNT CASE和WHEN语句来计算数据何时为NULL,何时在一个MySQL查询中为NULL?MySQL中COUNT CASE和WHEN语句

+4

`COUNT(col)`=“NOT NULL”的数量。 `COUNT(*) - COUNT(col)`= NULL的数量为什么你需要`CASE`? – 2011-02-18 18:31:33

回答

55

用途:

SELECT SUM(CASE 
      WHEN t.your_column IS NULL THEN 1 
      ELSE 0 
      END) AS numNull, 
     SUM(CASE 
      WHEN t.your_column IS NOT NULL THEN 1 
      ELSE 0 
      END) AS numNotNull 
    FROM YOUR_TABLE t 

这将总结列NULL &不为空的整个表。根据需要,您可能需要一个GROUP BY子句。

+0

现在如何回显这个值,多少是NULL,多少不是NULL。 – 2011-02-18 18:37:36