sql语句中count(*)与count(abc)的区别我想统计t_abc这张表中abc字段的基数,分别执行以下两种:一:SELECT abd,COUNT(*) 数量FROM t_abcgroup by abc二:SELECT abd,COUNT(abc) 数量FROM t_abcgroup by abc执行结果一

来源:学生作业帮助网 编辑:作业帮 时间:2024/07/29 17:40:08
sql语句中count(*)与count(abc)的区别我想统计t_abc这张表中abc字段的基数,分别执行以下两种:一:SELECT abd,COUNT(*) 数量FROM t_abcgroup by abc二:SELECT abd,COUNT(abc) 数量FROM t_abcgroup by abc执行结果一
xRAOA+{ ^7MBp6mMjvkRhW@n̛|;Sje}KY 50'Qwt&?8SnKk[Eyۄ-+t]\-&UHa=ԩT> xM,+sfai~䄁A6|ᙡ4^W7rF-veuơ{AL>fti5u}O3p3=H菸~ oF; I9{, K$G"䗍)+KZsӖm_%B*Pk(48<,  +,8?Ũ]#`?9vqd^ vP;u>UR*o|мn|9J+دc4ӆWh Jz.~U7/DBE+K$z<

sql语句中count(*)与count(abc)的区别我想统计t_abc这张表中abc字段的基数,分别执行以下两种:一:SELECT abd,COUNT(*) 数量FROM t_abcgroup by abc二:SELECT abd,COUNT(abc) 数量FROM t_abcgroup by abc执行结果一
sql语句中count(*)与count(abc)的区别
我想统计t_abc这张表中abc字段的基数,分别执行以下两种:
一:
SELECT abd,COUNT(*) 数量
FROM t_abc
group by abc
二:
SELECT abd,COUNT(abc) 数量
FROM t_abc
group by abc
执行结果一样.
但同事告诉我正确的应该是第一种写法.

sql语句中count(*)与count(abc)的区别我想统计t_abc这张表中abc字段的基数,分别执行以下两种:一:SELECT abd,COUNT(*) 数量FROM t_abcgroup by abc二:SELECT abd,COUNT(abc) 数量FROM t_abcgroup by abc执行结果一
区别在于
当abc为空的时候,第二种不算入count中
而第一种是无条件的都算入count中
比例一列数据
字段名叫abc
A
B
NULL
这样的话,第一种查询是3条,而第二种查询的结果是2条
你可以自己弄几条数据测试一下,就知道结果了