ice*_*l89 16 mysql
我是否正确地说:
COUNT(expr) WHERE expr IS NOT *
只计算非空值吗?
将COUNT(*)始终统计所有行?如果所有列都为空怎么办?
COUNT(*)
God*_*eke 23
正确.COUNT(*)是表中的所有行,COUNT(表达式)是表达式仅为非空的位置.
如果所有列都为NULL(表示您没有主键,那么这不应该发生在规范化数据库中)COUNT(*)仍然会返回插入的所有行.只是不要这样做.
您可以将*符号视为"在表中"而不是"在任何列中".
这涉及MySQL参考手册.
Roe*_*oey 14
如果你想计算NULL,试试吧
SELECT COUNT(IFNULL(col, 1)) FROM table;
Ser*_*gei 5
刚检查过:
选择计数(*)
返回1,其中一条记录填充NULL
选择计数(字段)
返回0.
我没有在NULL值中看到记录中的点.这种记录不得存在.
归档时间:
16 年,2 月 前
查看次数:
25888 次
最近记录:
6 年,7 月 前