一、聚集函数

聚集函数:运行在行组上,计算和返回单个值的函数

SQL聚集函数

函数

说明

AVG()

返回某列的平均值

COUNT()

返回某列的行数

MAX()

返回某列的最大值

MIN()

返回某列的最小值

SUM()

返回某列值之和

1.1 AVG()函数

AVG():返回所有列、特定列或行的平均值

  • 返回一个列所有行的平均值
SELECT AVG(column_name) FROM table
  • 返回一个列特定行的平均值
SELECT AVG(column_name) FROM table WHERE column_name = "xxx"
  • 返回多个列的平均值
SELECT AVG(column1_name),AVG(column2_name)  FROM table
注意:

AVG()函数只能用于单个列,想要对多个列求平均值则需要使用多个AVG()函数
AVG()函数忽略列值为NULL的行

1.2 COUNT()函数

COUNT()函数进行计数,可利用COUNT()对表中所有行或者特定行进行计数

COUNT()函数有两种计数方式:

  • COUNT(*) 对所有行进行计数,不管表列中包含的是空值还是非空值
  • COUNT(column) 对某列进行计数,忽略空值

用法如下:
(1) 返回表table的所有行的数目

SELECT COUNT(*) FROM table

(2)返回列column_name不为NULL的行数

SELECT COUNT(column_name) FROM table
1.3 MAX()函数

返回指定列的最大值,必须指定列名,如下所示:

SELECT MAX(column_name) FROM table

以上返回表table中列column_name的最大值

注意:
  • MAX()函数忽略列值为NULL的行
  • MAX()函数一般用于数值型或者日期型数据。但也可以用于其他类型数据,当用于文本型数据时则返回最后一行
1.4 MIN()函数

返回指定列的最小值,必须指定列名,如下所示:

SELECT MIN(column_name) FROM table

以上返回表table中列column_name的最小值

注意:
  • MIN()函数忽略列值为NULL的行
  • MIN()函数一般用于数值型或者日期型数据。但也可以用于其他类型数据,当用于文本型数据时则返回最前面一行
1.5 SUN()函数

SUN()函数用来返回指定列值的和(总计)。用法如下:

SELECT SUN(column_name) FROM table

以上返回表table所有列column_name的值

二、聚集不同的函数

使用DISTINCT参数则只对列值不同的行进行计算,用法如下:

SELECT AVG( DISTINCT column_name) FROM table
三、组合聚集函数

实际上,聚集函数可以多个组合使用,比如:

SELECT SUN(column_name),AVG(column_name) FROM table