目錄
- MySQL 結果排序-- 聚集函數
- 環境
- 查詢結果排序
- 查詢的分組與匯總
- 查一下 學生們平均年齡
- 查一下總人數是多少
- 查一下每個年齡有多少人
- 查出最大年齡
- 總結
MySQL 結果排序-- 聚集函數
環境
CREATE TABLE `student` (
`id` int(11) NOT NULL AUTO_INCREMENT COMMENT '學號',
`student_name` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '學生姓名',
`sex` varchar(5) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '性別\r\n',
`age` int(11) NULL DEFAULT NULL COMMENT '年齡',
`result` double(10, 0) NULL DEFAULT NULL COMMENT '成績',
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 5 CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic;
INSERT INTO `student` VALUES (1, '小王', '男', 18, 90);
INSERT INTO `student` VALUES (2, '小李', '女', 19, 80);
INSERT INTO `student` VALUES (3, '小明', '男', 20, 85);
INSERT INTO `student` VALUES (4, '小張', '男', 21, 87);
查詢結果排序
平常應用比較多的就是篩選熱度產品、或者微博熱搜。
語法格式:
SELECT 字段名1… FROM 表名 ORDER BY 字段名1 [ASC | DESC ] ,字段名2 [ASC | DESC ]…;
字段名1 、2 是對查詢結果排序的依據。 ASC 表示升序 DESC表示降序。 默認是ASC。
舉個爪子:
SELECT * FROM student ORDER BY age DESC ;

當后面跟兩個排序規則的時候,是第一個字段名相同的時候,才按照第二個字段名排序規則排序。
剩下自己摸索。
思考:
查找 age 降序 student_name 升序 該怎么寫?
查詢的分組與匯總
聚集函數
函數 |
作用 |
AVG() |
返回某列的平均值 (平均值) |
COUNT() |
返回某列的行數 (統計) |
MAX() |
返回某列的最大值 (最大值) |
MIN() |
返回某列的最小值 (最小值) |
SUM() |
返回某列值之和(求和) |
查一下 學生們平均年齡
select AVG(age) as "年齡" from student;

查一下總人數是多少
select count(id) as "總人數" from student;

查一下每個年齡有多少人
select age, count(id) as "總人數" from student GROUP BY age;

查出最大年齡
select MAX(age) as "最大年齡" from student ;

小于一樣。
查詢出男女各多少人
select sex ,count(*) AS "人數" from student GROUP BY sex;
#GROUP BY 是將結果按照 后面跟的字段名分組

查詢成績的總分的是多少
select sum(result) as "成績總分" FROM student;

總結
本篇文章就到這里了,希望能給你帶來幫助,也希望您能夠多多關注腳本之家的更多內容!
您可能感興趣的文章:- MySQL 分組查詢和聚合函數
- MySQL查詢排序與查詢聚合函數用法分析
- MySQL中聚合函數count的使用和性能優化技巧
- MySql 中聚合函數增加條件表達式的方法
- MySQL必備基礎之分組函數 聚合函數 分組查詢詳解