SQL中COUNT()与COUNT(列名)结果差异,NULL值如何影响聚合函数计数?
- 内容介绍
- 文章标签
- 相关推荐
本文共计742个文字,预计阅读时间需要3分钟。
在SQL查询中,可以使用以下方式计算满足特定条件的记录数量:
为什么 COUNT(列名) 总是 ≤ COUNT(*)
这是 SQL 标准定义的行为,不是数据库 bug 或配置异常。COUNT(列名) 的语义就是“该列值不为 NULL 的行数”,只要表中存在任意一行该列为 NULL,结果就必然小于 COUNT(*)。
本文共计742个文字,预计阅读时间需要3分钟。
在SQL查询中,可以使用以下方式计算满足特定条件的记录数量:
为什么 COUNT(列名) 总是 ≤ COUNT(*)
这是 SQL 标准定义的行为,不是数据库 bug 或配置异常。COUNT(列名) 的语义就是“该列值不为 NULL 的行数”,只要表中存在任意一行该列为 NULL,结果就必然小于 COUNT(*)。

