sql中 count(*) 和 count(1)啥区别?

2025-02-26 05:28:04
推荐回答(5个)
回答1:

count(*) 可以统计所有的行数,包括为null的行

count(1) 统计的是第一个子字段的行数,为null的行数 不统计。

sql 语句中 有时候1 代表对应的 第一个字段,第二个字段 一次类推。

回答2:

COUNT是计算行数的函数,COUNT(*)可以计算出行数,COUNT(1)也可以计算出行数,1在这里代表一行。

例如:SELECT 1 FROM TABLENAME 会显示出VALUE为1的列。

回答3:

你建一个表,插入两行记录,一行为1,一行为空,然后你去看看 count(*) 和 count(1) 发现结果不一样,就知道意思了

回答4:

聚合函数的参数在不同的函数中代表的意义是不同的:
max(1)中 1:表示为订制1;
sum(1)中 1:表示为行数;
count(1)中 1:表示为所有行,在这里的所有数字都可以看作 * ;

回答5:

1是查一条字段,而*是表里所有的字段!这两个概念是不一样的!