mysql之分组查询GROUP BY,HAVING

本文详细介绍了MySQL中的分组查询语法,包括查询格式、分组查询案例,如简单的分组、分组前筛选、分组后筛选以及按多个字段分组,并展示了如何结合HAVING子句进行分组后的筛选。此外,还提供了一个按员工姓名长度分组并筛选员工数量大于5的组的例子,以及按部门和工种分组并按平均工资排序的查询示例。
摘要由CSDN通过智能技术生成

一 查询格式

select column, group_function(column)
from 表名
[where 筛选条件]
group by 分组列表
[order by 子句]
注意:查询列表比较特殊,要求是分组函数和group by后面的字段,group by 和having后面都可以使用语句的前部分定义的别名,where后面不能使用别名。

二 分组查询的案例

注意:有筛选条件的分组查询分为分组前筛选和分组后筛选两种,分组前筛选是通过原表就可以筛选,分组后筛选是必须依赖分组的结果才能筛选,像这种查询可能猛的一下看不出来怎么写,如下步骤能简化求解:

1. 先写出框架select ... from ... group by ...
2. 观察筛选条件是分组前筛选还是分组后筛选,然后再依次加到查询语句中

分组前筛选放到where后面,分组后筛选放到having后面;如果是聚合函数的结果作为筛选条件,一定是分组后筛选;能用分组前筛选的尽量用分组前筛选

1. 简单的分组查询

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值