MySQL的HAVING用法「建议收藏」

MySQL的HAVING用法「建议收藏」来自:https://blog.lmlyz.online/index/detail/id/59.htmlwhere、聚合函数、having在from后面的执行顺序:where>聚合函数(sum,min,max,avg,count)>having若须引入聚合函数来对groupby结果进行过滤则只能用having。(是先执行聚合函数还是先过滤然后比对我上面列出的执行顺序…

大家好,又见面了,我是你们的朋友全栈君。

来自:https://blog.lmlyz.online/index/detail/id/59.html
where、聚合函数、having 在from后面的执行顺序:
where>聚合函数(sum,min,max,avg,count)>having
若须引入聚合函数来对group by 结果进行过滤 则只能用having。( 是先执行聚合函数还是先过滤 然后比对我上面列出的执行顺序 一看便知)
HAVING语句通常与GROUP BY语句联合使用,用来过滤由GROUP BY语句返回的记录集。
HAVING语句的存在弥补了WHERE关键字不能与聚合函数联合使用的不足。
语法:
SELECT column1, column2, … column_n, aggregate_function (expression)
FROM tables
WHERE predicates
GROUP BY column1, column2, … column_n
HAVING condition1 … condition_n;
如果想查询平均分高于80分的学生记录可以这样写:
SELECT id, COUNT(course) as numcourse, AVG(score) as avgscore
FROM student
GROUP BY id
HAVING AVG(score)>=80;
在这里,如果用WHERE代替HAVING就会出错。
注意事项 :
1、where 后不能跟聚合函数,因为where执行顺序大于聚合函数。
2、where 子句的作用是在对查询结果进行分组前,将不符合where条件的行去掉,即在分组之前过滤数据,条件中不能包含聚组函数,使用where条件显示特定的行。
3、having 子句的作用是筛选满足条件的组,即在分组之后过滤数据,条件中经常包含聚组函数,使用having 条件显示特定的组,也可以使用多个分组标准进行分组。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/150481.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • apachestruts2是什么_apache免费吗

    apachestruts2是什么_apache免费吗 1.org.apache.struts2.dispatcher.FilterDispatcher?    是Struts2的主要的Filter,负责四个方面的功能:        (1)执行Actions        (2)清除ActionContext        (3)维护静态内容        (4)清除request生命周期内的XWork的interceptors    另注

  • c语言和python实用性_C语言和Python语言,那个更好?

    c语言和python实用性_C语言和Python语言,那个更好?(3)灵活性Python语言的最大优点在于它的灵活性,这在测试领域非常重要,因为测试所面临的业务和需求经常在变化,有时它们甚至无法满足并自行决定,而在这时,你可以使用Python丰富的第三方库轻松找到解决方案。(4)扩张Python语言除了测试行业外,如果需要,你还可以通过Python轻松访问Web开发,数据分析,自动化操作以及人工智能等领域。Python是一种动态语言,这就是为什么它易于学习,但…

    2022年10月27日
  • vue定时器定时执行任务_vue 定时器

    vue定时器定时执行任务_vue 定时器对于程序员来说,经常会遇到项目周期短的状况。白天开会讨论需求,晚上加班写代码,熬夜发版本,上线改Bug。工作日就是:开会、写代码、倒水、上厕所、抽烟、改Bug,一天最开心的时刻就是带薪拉屎。好不容易到了周末,有时还会通宵玩游戏,半个月也不运动一次。再好的身体,也会被这种高强度的工作,无规律的生活所击垮。随着年龄越来越大,加上每天久坐不起来运动运动,这样下去身体真的顶不住,久坐有挺多危害的: 久坐可能会导致心脑血管疾病增加 久坐可能会导致免疫力低下 久坐可能会导致损脑伤胃

  • YUV420 YUV420sp 图像格式「建议收藏」

    YUV定义:分为三个分量,“Y”表示明亮度(Luminance或Luma),也就是灰度值;而“U”和“V”表示的则是色度(Chrominance或Chroma),作用是描述影像色彩及饱和度,用于指定像素的颜色。YUV格式:有两大类:planar和packed。YUV格式通常有两大类:打包(packed)格式和平面(planar)格式。对于planar的YUV格式,先连续存储所有…

  • stun client java实现_STUN Client

    stun client java实现_STUN ClientIsyouremailaddressOK?Youaresignedupforournewslettersbutyouremailaddressiseitherunconfirmed,orhasnotbeenreconfirmedinalongtime.Pleaseclickheretohaveaconfirmationemail…

  • jdk1.8ArrayList主要方法和扩容机制(源码解析)

    jdk1.8ArrayList主要方法和扩容机制(源码解析)ArrayList简介:ArrayList实现了List接口它是一个可调整大小的数组可以用来存放各种形式的数据。并提供了包括CRUD在内的多种方法可以对数据进行操作但是它不是线程安全的,外ArrayList按照插入的顺序来存放数据。ArrayList的主要成员变量:privatestaticfinalintDEFAULT_CAPACITY=10;//数组默认初始容…

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号