COUNT() 计数函数
COUNT() 函数返回匹配指定条件的行数。
语法:
1.返回指定列的字段值条数
SELECT COUNT(column_name) FROM table_name;
2.返回整表数据行条数
SELECT COUNT(*) FROM table_name;
3.返回指定列去重后的字段值条数
SELECT COUNT(DISTINCT column_name) FROM table_name;
column_name:字段名(必须是数值字段)
table_name:表名
示例:
1.统计学生数据表clazz字段条数:
SELECT COUNT(clazz) AS clazz字段数
FROM students;
2.统计学生数据表所有数据行条数:
SELECT COUNT(*) AS 全表行数
FROM students;
3.查询学生数据表中的不重复的班级数
SELECT COUNT(DISTINCT clazz) AS 班级数
FROM students;
思考一下,查询不重复的班级数能否使用 SELECT DISTINCT 命令呢?
尝试一下:
SELECT DISTINCT COUNT(clazz) AS 班级数
FROM students;
很明显,这种方式并不能实现,因为 COUNT()函数先执行,执行结束仅返回一条记录,再进行 SELECT DISTINCT 去重,自然不能得到想要的结果。
MAX()最大值函数
MAX() 函数返回指定列的最大值。
语法:
SELECT MAX(column_name) FROM table_name;
column_name:字段名(必须是数值字段)
table_name:表名
示例:
查询数学科目的最高成绩
SELECT MAX(score)
FROM score
INNER JOIN subject
ON score.subject_id = subject.subject_id
WHERE subject.subject_name = '数学';
MIN() 最小值函数
MIN() 函数返回指定列的最小值。
语法:
SELECT MIN(column_name) FROM table_name;
column_name:字段名(必须是数值字段)
table_name:表名
示例:
查询数学科目的最低成绩
SELECT MIN(score) AS 最低成绩
FROM score
INNER JOIN subject
ON score.subject_id = subject.subject_id
WHERE subject_name = '数学';
本专栏将持续更新,对数据库SQL感兴趣的同学可以关注一下,谢谢!