在oracle中使用having关键字来限制你的分组结果
2021/6/16 19:21:23
本文主要是介绍在oracle中使用having关键字来限制你的分组结果,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
在oracle中使用having关键字来限制你的分组结果
前面我们介绍了,使用oracle的聚合函数和group by关键字来对结果集合进行分组,这时就有了一个新的问题,例如,我们针对聚合函数那一列需要找到满足条件的那些分组结果。我们可以使用where子句吗?不行,我们需要的是使用having关键字。
例如我们需要找出那些平均工资在$2000以上的部门。使用having关键字的写法是:
Select deptno,avg(sal) avg_sal
From emp
Group by deptno
Having avg(sal) > 2000;
这样就可求出正确的结果
如果你使用的是
Select deptno,avg(sal) avg_sal
From emp
Group by deptno
where avg(sal) > 2000;
将会出现ORA-00934的错误。
关于oracle的having 关键字有一点要说明就是不可以是在having 使用聚合函数的别名,例如
Select deptno,avg(sal) avg_sal
From emp
Group by deptno
Having avg_sal > 2000;
将会出现:ORA-00904: “AVG_SAL”: 无效的标识符的错误。
当然having关键词只能用在处理聚合函数的结果,不可以用在普通列中。
前面给出的例子的结果:
SQL> Select deptno,avg(sal) avg_sal
2 From emp
3 Group by deptno
4 Having avg(sal) > 2000;
DEPTNO AVG_SAL
———- ———-
10 2916.66667
20 2235
这篇关于在oracle中使用having关键字来限制你的分组结果的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-05-29Elasticsearch慢查询日志配置
- 2024-05-29揭秘华为如此多成功项目的产品关键——Charter模板
- 2024-05-29海外IDC业务拓展的7大挑战
- 2024-05-29InLine Chat功能优化对标Github Copilot,CodeGeeX带来更高效、更直观的编程体验!
- 2024-05-29CodeGeeX 智能编程助手 6 项功能升级,在Visual Studio插件市场霸榜2周!
- 2024-05-29AutoMQ 生态集成 Apache Doris
- 2024-05-292024年IDC行业的深度挖掘:机遇、挑战与未来展望
- 2024-05-29五款扩展组件齐发 —— Volcano、Keda、Crane-scheduler 等,邀你体验
- 2024-05-29AutoMQ 对象存储数据高效组织的秘密: Compaction
- 2024-05-29活动预告|来 GIAC 大会听大数据降本利器:AutoMQ 基于云原生重新设计的 Kafka