ToB企服应用市场:ToB评测及商务社交产业平台

标题: count(1)、count(_)与count(列名)的区别? [打印本页]

作者: 立山    时间: 2024-12-24 09:00
标题: count(1)、count(_)与count(列名)的区别?
大家好,我是锋哥。本日禀享关于【count(1)、count(_)与count(列名)的区别?】面试题。盼望对大家有资助;

count(1)、count(_)与count(列名)的区别?

1000道 互联网大厂Java工程师 精选面试题-Java资源分享网
在 SQL 中,COUNT() 是一个用于统计行数的聚合函数。COUNT(1)、COUNT(*) 和 COUNT(列名) 是三种常见的用法,它们在不怜悯况下的表现有所差别。下面我会详细解释这三者的区别。
1. COUNT(1)


示例:

  1. SELECT COUNT(1) FROM employees;
复制代码
这会返回 employees 表中所有行的数量。
2. COUNT(*)


示例:

  1. SELECT COUNT(*) FROM employees;
复制代码
这也会返回 employees 表中的所有行的数量。
3. COUNT(列名)


示例:

  1. SELECT COUNT(salary) FROM employees;
复制代码
这会返回 employees 表中 salary 列中非 NULL 值的数量。假如某些行的 salary 列值为 NULL,这些行不会被计数。
总结比力:

函数计数的内容忽略 NULL 值留意事项COUNT(*)统计所有行(不管列的值是否 NULL)否适用于统计所有行数COUNT(1)统计所有行(不管列的值是否 NULL)否通常与 COUNT(*) 功能相同COUNT(列名)统计该列非 NULL 值的行数是只计数该列中非 NULL 的行 常见误区:


总的来说,选择哪种写法取决于你想要统计的内容:


免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。




欢迎光临 ToB企服应用市场:ToB评测及商务社交产业平台 (https://dis.qidao123.com/) Powered by Discuz! X3.4