描述 SUM 聚合函式和 GROUP BY 與 HAVING 使用的 SQL 查詢
問題:編寫 DB2 SQL 查詢,分別給出 7 月 29 日和 7 月 30 日訂單的 ORDER_TOTAL 總和。結果應顯示在一個表中。
解決方案
我們可以使用聚合函式 SUM、GROUP BY 和 HAVING 分別查詢 7 月 29 日和 30 日訂單的 ORDER_TOTAL 總和。
例如,如果我們有一個如下所示的 ORDER 表。
| ORDER_ID | ORDER_TOTAL | ORDER_DATE |
| Z22345 | 342 | 29-07-2020 |
| Z62998 | 543 | 30-07-2020 |
| Z56990 | 431 | 12-07-2020 |
| Z56902 | 6743 | 29-07-2020 |
| Z99781 | 443 | 10-07-2020 |
| Z56112 | 889 | 30-07-2020 |
以下查詢將給出所需的結果。
示例
SELECT ORDER_DATE, SUM(ORDER_TOTAL) FROM ORDERS GROUP BY ORDER_DATE HAVING ORDER_DATE IN (‘29-07-2020’, ‘30-07-2020’)
在此查詢中,我們選擇了 ORDER_DATE 和 ORDER_TOTAL,並使用了聚合函式 SUM。
GROUP BY 將確保按日期計算 ORDER_TOTAL 的總和,HAVING 子句將確保僅顯示 7 月 29 日和 30 日的結果。該查詢將給出以下結果。
| ORDER_DATE | ORDER_TOTAL |
| 29-07-2020 | 7085 |
| 30-07-2020 | 1432 |
廣告
資料結構
網路
關係資料庫管理系統
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP