MySQL 聚合函数排序

目录
  • 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;

    总结

    本篇文章就到这里了,希望能给你带来帮助,也希望您能够多多关注www.887551.com的更多内容!

    (0)
    上一篇 2022年3月21日
    下一篇 2022年3月21日

    相关推荐