mssql sqlserver sum(1)、sum(2)、count(1)、count(8)、count(*)、统计函数应用区别简介


摘要:
下文着重讲述sum同count统计函数的区别,如下所示:
实验环境:sqlserver 2008 R2



一、sum count函数简介

sql统计函数中:
sum:对指定字段的表达式值进行求和计算
count:对指定表达式的行数进行计算

sum(1)等同于count函数,但是count函数效率更高



二、sum count函数举例说明
create table test(A int,B int,info varchar(10))
go

insert into test(A,B,info)values(5,6,’A’),
(2,4,’B’),(8,9,’B’),(3,1,’A’),(7,3,’C’),(1,2,null)
go

select info,sum(1) as [sum(1)],
count(*) as [count(*)],
count(6) as [count(6)],
count(8) as [count(8)],
count(info) as [count列],
sum(2) as [sum(2)],
sum(A) as [sum列值]
from test
GROUP BY info
/*
从以上的sql脚本中,可以看出
sum(1)同count(*) count(6) count(8) count(info)都是统计行数,返回结果一致
—sum(2)对每一行采用值2相加
count(6) count(8) 不会由于输入的值不同而得到不同的值
—count(列) 会过滤掉列值等于null的行
及count(列名);只统计列值中不会null的行数
*/
go
truncate table test
drop table test

相关阅读:
多列数据进行求和sum计算
数据和sum结果一起
sum使用if进行按条件汇总
sum函数计算后的结果中包含null的处理方法
sum计算个数的例子分享
sum求和函数简介
sum(1)、count(*) 效率对比分析
数据库中sum和count用法区别说明
sql脚本对数据表所有行和列值求和的方法