Mysql常用sql语句(13)- having 过滤分组结果集
发布时间:2020-12-12 02:13:53 所属栏目:MySql教程 来源:网络整理
导读:测试必备的Mysql常用sql语句系列 https://www.cnblogs.com/poloyy/category/1683347.html ? 前言 having关键字对group by分组后的数据进行过滤 having支持where的所有操作符和语法 ? where 和 having 的一些差异性 wherehaving 不可以 使用聚合函数 可以 使
where
having
不可以使用聚合函数
可以使用聚合函数
数据 group by 前过滤
数据?group by 后过滤
查询条件中不可以使用字段别名
查询条件中可以使用字段别名
用于过滤数据行
用于过滤分组后的结果集?
根据数据表的字段直接过滤
根据已查询出的字段进行过滤?
?
having 的语法格式
HAVING <查询条件>
?
确认测试表里有什么数据,方便后面的栗子做对比
?
having 单独使用的栗子
根据age分组,将分组后的结果过滤出departmen为seewo的分组记录
select *,GROUP_CONCAT(username) from yyTest group by age having department = "seewo";
?
having + where 的栗子
- 先查询sex = 1的所有记录
- 将查询的记录按照department分组
- 然后过滤出department=seewo的分组
where sex = "1" by department = "seewo"
?
having + where + 聚合函数的栗子
- sex = 1的所有记录
- 将查询的记录按照department分组
- 然后过滤出max(date) > "2020-05-08"的分组
having max(date) > "2020-0508"
?
(编辑:李大同)
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!
测试必备的Mysql常用sql语句系列 https://www.cnblogs.com/poloyy/category/1683347.html ? 前言
? where 和 having 的一些差异性 |