聚合函数

AVG函数

功能:该聚合函数返回集合中的平均数。该函数只有1个参数,该参数可以是数字类型的列,返回值是数字的函数,或者计算结果是数字的表达式。包含NULL值的行将被忽略。如果该表是空的或者AVG 的参数都是NULL,则该函数返回NULL。当查询指定使用GROUP BY从句时,则每个group by的值都会返回1条结果。

返回类型: double类型

COUNT函数

功能: 该聚合函数返回满足要求的行的数目,或者非NULL行的数目。COUNT(*) 会计算包含NULL 值的行。COUNT(column_name)仅会计算非NULL值的行。用户可以同时使用COUNT函数和DISTINCT操作符,count(distinct col_name…​)会先对数据去重,然后再计算多个列的组合出现的次数。

返回类型:int类型

举例:

  1. mysql> select count(distinct tiny_column, short_column) from small_table;
  2. +-----------------------------------------------+
  3. | count(DISTINCT `tiny_column`, `short_column`) |
  4. +-----------------------------------------------+
  5. | 2 |
  6. +-----------------------------------------------+
  7. 1 row in set (0.08 sec)

MAX函数

功能:该聚合函数返回集合中的最大值。该函数和min函数的功能相反。该函数只有1个参数,该参数可以是数字类型的列,返回值是数字的函数,或者计算结果是数字的表达式。包含NULL值的行将被忽略。如果该表是空的或者MAX的参数都是NULL,则该函数返回NULL。当查询指定使用GROUP BY从句时,则每个group by的值都会返回1条结果。

返回类型:和输入参数相同的类型。

MIN函数

功能:该聚合函数返回集合中的最小值。该函数和max函数的功能相反。该函数只有1个参数,该参数可以是数字类型的列,返回值是数字的函数,或者计算结果是数字的表达式。包含NULL 值的行将被忽略。如果该表是空的或者MIN 的参数都是NULL,则该函数返回NULL。当查询指定使用GROUP BY从句时,则每个group by的值都会返回1条结果。

返回类型:和输入参数相同的类型。

SUM函数

功能:该聚合函数返回集合中所有值的和。该函数只有1个参数,该参数可以是数字类型的列,返回值是数字的函数,或者计算结果是数字的表达式。包含NULL值的行将被忽略。如果该表是空的或者MIN的参数都是NULL,则该函数返回NULL。当查询指定使用GROUP BY从句时,则每个group by的值都会返回1条结果。

返回类型:如果参数整型,则返回BIGINT,如果参数是浮点型则返回double类型

GROUP_CONCAT函数

功能:该聚合函数会返回1个字符串,该字符串是集合中所有字符串连接起来形成的新字符串。如果用户指定分隔符,则分隔符用来连接两个相邻行的字符串。

返回类型:string类型

使用说明:默认情况下,该函数返回1个覆盖所有结果集的字符串。当查询指定使用group by 从句时,则每个group by的值都会返回1条结果。concat()和concat_ws()都是将一行中的多个列合成1个新的列,group_concat()是聚合函数,将不同行的结果合成1个新的列。

方差函数

语法:

  1. VARIANCE | VAR[IANCE]_SAMP | VAR[IANCE]_POP

功能:该类聚合函数返回一组数的方差。这是一个数学属性,它表示值与平均值之间的距离。它作用于数值类型。VARIANCE_SAMP()和VARIANCE_POP()分别计算样本方差和总体方差,VARIANCE()是VARIANCE_SAMP()的别名。VAR_SAMP()和VAR_POP()分别是VARIANCE_SAMP()和VARIANCE_POP()是别名。

返回类型:double类型

标准差函数

语法:

  1. STDDEV | STDDEV_SAMP | STDDEV_POP

功能:该类聚合函数返回一组数的标准差。它作用于数值类型。STDDEV_POP()和STDDEV_SAMP()分别计算总体标准差和样本标准差。STDDEV()是STDDEV_SAMP()的别名。

返回类型:double类型