iT邦幫忙

2024 iThome 鐵人賽

DAY 19
0

今天要介紹的是在 SQL 中,用於過濾資料的WHERE和HAVING子句,但它們的應用場景有所不同。
WHERE子句用於在進行分組GROUP BY之前過濾資料。它限制資料範圍,確保只有符合條件的行參與分組和聚合。例如,從表中選取某些特定條件下的資料進行分組操作。
HAVING子句則是針對已經完成分組和聚合後的資料進行過濾。它常與聚合函數SUM、COUNT等搭配使用,用來過濾出符合聚合結果條件的組。例如,篩選總和大於某個值的分組結果。簡單來說,WHERE是過濾行,HAVING過濾分組結果。
使用WHERE範例:在employees和departments中,將部門代號30以後的資料一兆部門代號進行排序,並顯示同一個部門中,每一個職務員工每個月薪資之總和。
https://ithelp.ithome.com.tw/upload/images/20241002/20169221mqjzrVVK17.png
https://ithelp.ithome.com.tw/upload/images/20241002/20169221kRs8k4TYyI.png

使用HAVIG範例:在order_items資料表中,查詢單價高於1000,且曾經被訂購超過5次以上的產品之編號、訂購次數以及單價。
https://ithelp.ithome.com.tw/upload/images/20241002/20169221wQLiyB34XG.png
https://ithelp.ithome.com.tw/upload/images/20241002/201692210CblvaVdFh.png


上一篇
DAY18彙總函數
下一篇
DAY20分析函數介紹
系列文
oracle資料庫實作學習30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言