统计函数

了解用于查询的统计函数

概述

统计函数只能在查询语句查询字段中使用。因为查询字段是一个表达式,所以它允许使用任何函数(包括统计函数和一般函数)。

统计函数每次处理一个分组,它将分组中的所有数据进行统计,然后列出这个分组的统计结果。如果查询没有任何分组,那么系统默认把所有查询结果归为为一个分组。

常用统计函数

统计函数的参数有且只有一个,就是需要统计的数据源字段名(用于指定是哪一列数据)。

这里只列举了部分比较常用的统计函数,如需查看全部的统计函数请转到官网

计数 - COUNT(field)

返回指定列的记录条数。如果使用 * (表示全体)作为参数则不忽略 NULL 值,否则将忽略 NULL 值。

-- 统计填有年龄的学生记录条数(忽略 NULL 值)
SELECT COUNT(age) FROM student;

-- 统计所有学生记录条数(不会忽略 NULL 值)
SELECT COUNT(*) FROM student;

总和 - SUM(field)

计算指定列的记录总和,将忽略 NULL 值。

-- 统计学生年龄的总和
SELECT SUM(age) FROM student;

平均值 - AVG(field)

计算指定列的记录平均值,将忽略 NULL 值。

-- 统计学生年龄的平均值
SELECT AVG(age) FROM student;

最小值 - MIN(field)

计算指定列的记录最小值,将忽略 NULL 值。

-- 统计学生中的最小年龄
SELECT MIN(age) FROM student;

最大值 - MAX(field)

计算指定列的记录最大值,将忽略 NULL 值。

-- 统计学生中的最大年龄
SELECT MAX(age) FROM student;

与一般函数的区别

统计函数都只有一个参数(指定列),每次处理一个分组,也因此只能在查询语句中使用;一般函数可以有若干个参数,能在任何表达式中使用。

个人的理解是,如 COUNT(field) 是统计函数,而 COUNT(a, b, c, ...) 是一般函数。

最后更新于

这有帮助吗?