演示c_grade表
一、AVG()
AVG()函数用于返回数值列的平均值
例:
SELECT AVG(score) FROM c_grade;
运行结果:
通过运行结果可以看到,score字段为Null的值并没有计算在内(753/9=83.666667)。
二、COUNT()
COUNT()函数用于返回指定列的值,Null不计算在内。
例:
SELECT COUNT(score) FROM c_grade;
运行结果:
三、MAX()
MAX()函数用于返回指定列的最大值。
例:
SELECT MAX(score) FROM c_grade;
运行结果:
四、MIN()
MIN()函数用于返回值定列的最小值。
例:
SELECT MIN(score) FROM c_grade;
运行结果:
五、SUM()
SUM()函数用于返回指定列数值的总和。
例:
SELECT SUM(score) FROM c_grade;
运行结果:
六、GROUP BY语句
CROUP BY语句通常结合聚合函数,根据一个或多个列对结果集进行分组。
例:
SELECT id,SUM(score) FROM c_grade GROUP BY id;
运行结果:
七、HAVING字句
由于WHERE字句无法与聚合函数一起使用,我们可以通过HAVING 子句筛选分组后的各组数据。
使用WHERE字句,例子:
SELECT id,SUM(score) FROM c_grade GROUP BY id WHERE id < 3;
报错:
[SQL] SELECT id,SUM(score) FROM c_grade GROUP BY id WHERE id < 3; [Err] 1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'WHERE id < 3' at line 1
使用HAVING字句,例子:
SELECT id,SUM(score) FROM c_grade GROUP BY id HAVING id < 3;
运行结果:
八、ROUND()
ROUND()函数用于把数值字段四舍五入为指定的小数位数。
语法格式:
SELECT ROUND(列名,返回的小数位数) FROM 表名;
四舍五入保留一位小数,例:
SELECT id,ROUND(score,1) FROM c_grade;
运行结果:
四舍五入为一个整数,例:
SELECT id,ROUND(score) FROM c_grade;
运行结果: