目录
概述
SQL 函数还有一类,叫做聚合(或聚集、分组)函数,它是对一组数据进行汇总的函数,输入的是一组数据的集合,输出的是单个值。
图解:
SUM()
意义:返回数值列的总数。
适用:PostGreSql、MySQL、ORACLE 、Microsoft SQL Server
语法:
SELECT AVG(column_name) FROM table_name
AVG()
返回数值列的平均值。
适用:PostGreSql、 ORACLE 、Microsoft SQL Server、MySQL
语法:
SELECT AVG(column_name) FROM table_name
COUNT()
意义:返回匹配指定条件的行数。
适用:PostGreSql、 ORACLE 、Microsoft SQL Server、MySQL
注意:
- COUNT(*)返回表中记录总数,适用于任意数据类型。
- COUNT(expr) 返回expr不为空的记录总数。
- COUNT(*)会统计值为 NULL 的行,而 COUNT(列名)不会统计此列为 NULL 值的行。
语法:
--COUNT(column_name) 函数返回指定列的值的数目(NULL 不计入):
SELECT COUNT(column_name) FROM table_name;
--COUNT(*) 函数返回表中的记录数(无法用于 Microsoft Access):
SELECT COUNT(DISTINCT column_name) FROM table_name;
--COUNT(DISTINCT column_name) 函数返回指定列的不同值的数目:
SELECT COUNT(*) FROM table_name;
MAX()
意义:返回指定列的最大值
适用:PostGreSql、 ORACLE 、Microsoft SQL Server、MySQL
语法:
SELECT MAX(column_name) FROM table_name;
MIN()
意义:返回指定列的最小值。
适用:PostGreSql、 ORACLE 、Microsoft SQL Server、MySQL
语法:
SELECT MIN(column_name) FROM table_name;
ARRAY_AGG()
意义:返回一个数组,该数组由组内字段中的所有值组成。
适用:PostGreSql、
语法:
SELECT ARRAY_AGG(column_name) FROM table_name;