• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

MySQL 聚合函数排序

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

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;

总结

本篇文章就到这里了,希望能给你带来帮助,也希望您能够多多关注极客世界的更多内容!


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
Linux下redis的安装与使用图文教程发布时间:2022-02-10
下一篇:
redis 实现登陆次数限制的思路详解发布时间:2022-02-10
热门推荐
热门话题
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap