两者均是统计类函数,都不计算NULL字段!!!
单纯计算行数的话,count的效率比sum的效率高
MySQL SUM()函数介绍
SUM()
函数用于计算一组值或表达式的总和,SUM()
函数的语法如下:
SUM(DISTINCT expression)
SQL
SUM()
函数是如何工作的?
如果在没有返回匹配行SELECT语句中使用SUM
函数,则SUM
函数返回NULL
,而不是0
。DISTINCT
运算符允许计算集合中的不同值。SUM
函数忽略计算中的NULL
值。
MySQL COUNT()函数介绍
COUNT()
函数返回表中的行数。COUNT()
函数允许您对表中符合特定条件的所有行进行计数。
COUNT()
函数的语法如下 -
COUNT(expression)
SQL
COUNT()
函数的返回类型为BIGINT
。 如果没有找到匹配的行,则COUNT()
函数返回0
。
COUNT
函数有几种形式:COUNT(*)
,COUNT(expression)
和COUNT(DISTINCT expression)
。
SUM (Transact-SQL)
返回表达式中所有值的和或仅非重复值的和。SUM 只能用于数字列。Null 值会被忽略。
COUNT (Transact-SQL)
此函数返回组中找到的项数量。COUNT
的操作与COUNT_BIG函数类似。这些函数区别只在于其返回的值的数据类型。COUNT
始终返回“int”数据类型值。COUNT_BIG
始终返回“bigint”数据类型值。
来源:/mysql/
/zh-cn/sql/t-sql/functions/functions?view=sql-server-