Having与Where的区别

本文深入探讨了SQL中的聚合函数(如sum、max、min、avg、count)和分组操作(group by)的基本用法。通过具体实例(Demo1和Demo2),展示了如何在WHERE和HAVING子句中结合使用这些功能,有效筛选和汇总数据。重点介绍了在分组前和分组后如何应用过滤条件,以及常见聚合函数的应用场景。

1、where 子句的作用是在对查询结果进行分组前,将不符合where条件的行去掉,即在分组之前过滤数据,where条件中不能包含聚组函数,使用where条件过滤出特定的行。

2、having 子句的作用是筛选满足条件的组,即在分组之后过滤数据,条件中经常包含聚组函数,使用having 条件过滤出特定的组,也可以使用多个分组标准进行分组。

 

Demo1:

select 类别, sum(数量) as 数量之和 from A
group by 类别
having sum(数量) > 18


Demo2:(Having和Where的联合使用方法)

select 类别, SUM(数量)from A
where 数量 gt;8
group by 类别
having SUM(数量) gt; 10


附:常见的聚合函数如下   sum(列名)、max(列名)、min(列名)、avg(列名)、count(列名).

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值