SQL 函数
SQL 拥有很多可用于计数和计算的内建函数。 比如:
AVG() - 返回平均值
COUNT() - 返回行数
MAX() - 返回最大值
MIN() - 返回最小值
SUM() - 返回总和
FIRST() - 返回第一个记录的值
LAST() - 返回最后一个记录的值
GROUP BY
学习SQL函数前,先学习 GROUP BY 命令,因为 GROUP BY 经常与聚合函数一起使用,根据一个或多个列对结果集进行分组(将相同的字段值分为一组)。
语法:
SELECT columns
FROM table_name
GROUP BY column_name;
columns: 要查询的列名
table_name:表名
column_name:用于分组操作的字段名,可以为多个
示例:
查询全校所有班级
SELECT clazz AS 班级
FROM students
GROUP BY clazz;
查询所有班级及各班级学生的年龄分组
SELECT clazz AS 班级,age AS 年龄
FROM students
GROUP BY clazz,age;
AVG()平均值函数
AVG() 函数返回数值列的平均值。
语法:
SELECT AVG(column_name) FROM table_name
column_name:字段名(必须是数值字段)
table_name:表名
示例:
查询各班级所有学生的平均年龄,并按平均年龄升序排列:
SELECT clazz AS 班级,AVG(age) AS 平均年龄
FROM students
GROUP BY clazz
ORDER BY AVG(age);
关联学生数据表和学生成绩表,查询每位学生的平均成绩,并按平均成绩降序排列:
SELECT a.id AS 学生ID,
name AS 姓名,
AVG(score) AS 平均成绩,
clazz AS 班级
FROM score AS a
INNER JOIN students AS b
ON a.id = b.id
GROUP BY a.id
ORDER BY 平均成绩 DESC;
本专栏将持续更新,对数据库SQL感兴趣的同学可以关注一下,谢谢!