(快速入门)MySQL学习笔记一:(LGroupBy)

说明

这个只是本人自己学习时做的笔记,比较基础,希望大佬不喜勿喷。
有需要的小伙伴可以参考一下,只是很基础的笔记。谢谢大家!

基础GroupBy

语法代码:

----------------------------------------------------------------------------------------------------
--  group by子句
    --表示分组的含义:根据指定的字段,将数据进行分组,目的是为了统计。
    --分组统计
        根据班级id分组
    select * from my_student group by class;    //分组后只会保留每组的第一条
    --统计函数:(聚合函数)
    count():统计每组中的数量,如果统计目标是字段,那么不统计为null的字段。
    avg():求平均值
    sum():求和
    max():求最大值
    min():求最小值
    --使用聚合函数:按照班级统计每班人数,最大年龄,最矮的身高,平均年龄。
    select class,count(*),max(age),min(height),avg(age) from my_student group by class;
    --group_concat:可以将分组中指定的字段进行合并(字符串拼接)
    select class,group_concat(name),count(*),max(age),min(height),avg(age) from my_student group by class\G

--  多分组
    将数据安装某个字段进行分组之后,对已经分组的数据再次进行分组。
    基本语法:group by 字段1,字段2。安装字段1分完后再按字段2分组。
    --  select class,gender,count(*),group_concat(name) from my_student group by class,gender\G

--  分组排序
    按照分组字段进行排序,默认升序。
    基本语法:group by 字段【asc|desc】,字段【asc|desc】
    班级升序,性别降序
    select class,gender,count(*),group_concat(name) from my_student group by class ,gender desc\G
--  回溯统计
    当分组进行多分组之后,
    基本语法:group by 字段 【asc|descwith rollup;
    select class,count(*) from my_student group by class with rollup;
    class|count(*)
    1   |   3
    2   |   3
    null|   6
--  多分组回溯统计
    select class, gender,count(*) from my_student group by class,gender;
    select class, gender,count(*) from my_student group by class,gender with rollup;
    class|gender|count(*)
    1    |  男   |   2
    1    |  女   |   1
    1    | null |   3
    2    |  女   |   1
    2    | 保密   |   2
    2    |  女   |   1
    2    | null |   3
    null | null |   6
    select class, gender,count(*) from my_student group by gender,class with rollup;
    排序是按照先后顺序的,从前往后。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值