绑定完请刷新页面
取消
刷新

分享好友

×
取消 复制
Gauss 100 数据查询之HAVING子句
2020-03-03 13:50:38

使用HAVING子句将返回的行组限制为指定条件为TRUE的那些组。 如果省略此子句,则数据库将返回所有组的摘要行。

语法格式

HAVING condition [ , ... ]

使用方法

在WHERE子句和层级查询子句之后指定GROUP BY和HAVING。 如果同时指定GROUP BY和HAVING,则它们可以按任意顺序出现。

示例

示例1:查询那些低工资低于5000的部门中,每个部门的低工资和高工资。

SELECT section_id, MIN(salary), MAX (salary) 
FROM staffs
GROUP BY section_id
HAVING MIN(salary) < 5000
ORDER BY section_id;
SECTION_ID MIN(SALARY) MAX (SALARY)
---------------------------------------- ---------------------------------------- ----------------------------------------
10 4400 4400
30 2500 11000
50 2100 8200
60 4200 9000

4 rows fetched.

示例2:以下示例在HAVING子句中使用相关子查询,该子句从结果集中删除没有部门的经理和没有经理的部门。

SELECT section_id, manager_id
FROM staffs
GROUP BY section_id, manager_id HAVING (section_id, manager_id) IN
(SELECT section_id, manager_id FROM staffs x
WHERE x.section_id = staffs.section_id)
ORDER BY section_id;
SECTION_ID MANAGER_ID
---------------------------------------- ----------------------------------------
10 101
20 201
20 100
30 114
30 100
40 101
50 100
50 123
50 124
50 122
50 120
50 121
60 103
60 102
70 101
80 100
80 146
80 145
80 148
80 149
80 147
90 100
100 101
100 108
110 205
110 101

26 rows fetched.


分享好友

分享这个小栈给你的朋友们,一起进步吧。

GaussDB_数据库
创建时间:2020-01-06 16:21:44
华为GaussDB数据库小栈
展开
订阅须知

• 所有用户可根据关注领域订阅专区或所有专区

• 付费订阅:虚拟交易,一经交易不退款;若特殊情况,可3日内客服咨询

• 专区发布评论属默认订阅所评论专区(除付费小栈外)

技术专家

查看更多
  • GaussDB_数据库
    专家
戳我,来吐槽~