MySQL分组查询

基本语法
基本语法 select 查询字段 from 表名 where 查询条件 group by 分组字段 having 过滤条件
我们来实际操作一下
首先 我们建一个用户表
在这里插入图片描述
首先 我们根据user_gender (员工性别分组) 查看 男性和女性员工分别是多少个

select count(*) from user_list group by user_gender;

运行结果如下
在这里插入图片描述
我们用user_gender分组 查询了 count总条数
但我们现在看不出 到底是男的 4个 还是女的4个
修改代码如下

select user_gender,count(*) from user_list group by user_gender;

在这里插入图片描述
这次我们查询的字段是 user_gender 和 count 总长度 就可以知道 男女具体是多少了

然后 我们还是以男女分组 但这次 我们限制 只有22岁以上的员工可以参与查询

select user_gender,count(*) from user_list where user_age > 22 group by user_gender;

我们这里条件限制 user_age年龄 字段 必须大于22 才能参与查询
运行结果如下
在这里插入图片描述
在这里插入图片描述
这里我们可以看到 李四 和赵云 别过滤掉了 所以 男的就只有两个
男女 变成了 2比2

然后我们最后再来一个
判断薪资在 6千以上 且 人数 2人 或 2人以上的性别

select user_gender,count(*) from user_list where user_salary > 6000 group by user_gender having count(*) >= 2;

运行结果如下
在这里插入图片描述
首先 参与分组的数据 user_salary 必须大于 6000 然后查询后的过滤条件是 总数要 大于等于二
在这里插入图片描述
女员工只有一个人达到 总数小于2 所以被第二个条件过滤 最终 只有男员工的两条数据被查询了出来

数据纯属演示 乱造数据 没有任何其他意思

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值