mysql中having关键字_MySql - GROUP BY 和 HAVING关键字

本文主要针对GROUP BY 和 HAVING两个关键字进行分析

使用测试表如下:

b88d3a11e6dc50d281ac3af96ddf9491.png

测试前,只知道GROUP BY 这个关键字的作用是根据一个字段进行分组,去重。HAVING对分组设置条件。

具体分组规则,设置条件不清楚。

测试开始

首先

单独使用GROUP BY对 kecheng 字段进行分组:

SELECT * from a GROUP BY kecheng

执行sql,结果如下:

c8e0aaeea0478cda6c50c5fe9c615c24.png

分析:

根据 kecheng 字段分组,并去重了,去重规则为  kecheng  的第一条数据。

然后

加上HAVING,对分组进行设置条件:

SELECT * from a GROUP BY kecheng HAVING fenshu > 80

执行sql,结果如下:

a37e77183e8a05abb1327a9e1488d67e.png

分析:

本次结果相对于上次,少了一条数据

张三 数学 75

可以看出 HAVING 条件,是在 GROUP BY 分组后进行的筛选。

总结:

GROUP BY,对一个字段进行去重(取第一条),分组,

HAVING  配合 GROUP BY 使用,对分组后的数据进行限制,可以使用聚合函数。

注:本贴具体测试情况没有贴出,只是写出了测试后的数据结果。

原文:https://www.cnblogs.com/JonMingrev/p/10144622.html


版权声明:本文为weixin_34649252原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。