Mysql-5

Char(0) 列上的 count(id) 不起作用!

  • December 16, 2011

可能重複:

select count(*) 和 select count(any_non_null_column) 有什麼區別?

我有一個類型為 char(0) 的列。有些行是 NULL,有些是空的(’’)。問題是當我執行以下查詢時,結果將為 0。SELECT count(id) FROM test WHERE id IS NULL

但是當我執行以下查詢時,結果是正確的:SELECT count(*) FROM test WHERE id IS NULL

我有一個專欄,為什麼會這樣?

  • COUNT(somecolumn) 忽略 NULL
  • COUNT(*) 不會

你可以看到這個

SELECT count(id),count(*) FROM test WHERE id IS NULL

巧合的是,所有聚合函式都忽略 NULL,除了COUNT(*)

引用自:https://dba.stackexchange.com/questions/9261