有了解在sql中 count(*) 和 count(1)什么区别?

为什么别的聚合函数 max(1) sum(1) 结果不对,里面的1是啥意思,count(99)也是一样的难道是count 把括号里面的数字当做*来处理了吗?,求解释

慕码人8056858
浏览 306回答 2
2回答

尚方宝剑之说

count(*) 可以统计所有的行数,包括为null的行count(1) 统计的是第一个子字段的行数,为null的行数 不统计。sql 语句中 有时候1 代表对应的 第一个字段,第二个字段 一次类推。

GCT1015

COUNT是计算行数的函数,COUNT(*)可以计算出行数,COUNT(1)也可以计算出行数,1在这里代表一行。例如:SELECT 1 FROM TABLENAME 会显示出VALUE为1的列。
打开App,查看更多内容
随时随地看视频慕课网APP