设为首页 加入收藏

TOP

Oracle 11g: The difference between WHERE and HAVING(一)
2014-11-24 08:24:04 来源: 作者: 【 】 浏览:7
Tags:Oracle 11g: The difference between WHERE and HAVING
SQL> select * from sys.SHIP_CABINS ;

SHIP_CABIN_ID SHIP_ID ROOM_ ROOM_STYLE ROOM_TYPE WINDOW GUESTS SQ_FT BALCONY_SQ_FT
------------- ---------- ----- ---------- -------------------- ---------- ---------- ---------- -------------
1 102 Suite Standard Ocean 4 533
2 103 Stateroom Standard Ocean 2 160
3 104 Suite Standard None 4 533
4 105 Stateroom Standard Ocean 3 205
5 106 Suite Standard None 6 586
6 107 Suite Royal Ocean 5 1524
7 108 Stateroom Large None 2 211
8 109 Stateroom Standard None 2 180
9 110 Stateroom Large None 2 225
10 702 Suite Presidential None 5 1142
11 703 Suite Royal Ocean 5 1745
12 704 Suite Skyloft Ocean 8 722

Group by without WHERE and HAVING


SQL> select room_style, room_type, sum(GUESTS) "GUEST SUM" from sys.ship_cabins group by room_style, room_type ;

ROOM_STYLE ROOM_TYPE GUEST SUM
---------- -------------------- ----------
Stateroom Standard 7
Suite Standard 14
Stateroom Large 4
Suite Skyloft 8
Suite Royal 10
Suite Presidential 5

HAVING


SQL> select room_style, room_type, sum(GUESTS) "GUEST SUM" from sys.ship_cabins group by room_style, room_type having room_type<>'Royal' ;ROOM_STYLE ROOM_TYPE GUEST SUM
---------- -------------------- ----------
Stateroom Standard 7
Suite Standard 14
Stateroom Large 4
Suite Skyloft 8
Suite Presidential 5

WHERE


SQL> select room_style, room_type, sum(GUESTS) "GUEST SUM" from sys.ship_cabins where room_type<>'Royal' group by room_style, room_type ;

ROOM_STYLE ROOM_TYPE GUEST SUM
---------- -------------------- ----------
Stateroom Standard 7
Suite Standard 14
Stateroom Large 4
Suite Skyloft 8
Suite Presidential 5

Summary:

There is no difference between them when there is no aggregate function in HAVING clause.

However, we do this in HAVING.


SQL> select room_style, room_type, sum(GUESTS) "GUEST SUM" from sys.ship_cabins group by room_style, room_type having sum(GUESTS)>8 ;

ROOM_STYLE ROOM_TYPE GUEST SUM
---------- -------------------- ----------
Suite Standard
首页 上一页 1 2 下一页 尾页 1/2/2
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇CDB之我见 下一篇LevelDB数据库使用

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容:

·Redis压力测试实战 - (2025-12-27 09:20:24)
·高并发一上来,微服 (2025-12-27 09:20:21)
·Redis 高可用架构深 (2025-12-27 09:20:18)
·Linux 系统监控 的完 (2025-12-27 08:52:29)
·一口气总结,25 个 L (2025-12-27 08:52:27)