SQL 查詢示例:描述條件處理
問題:編寫一個 SQL 查詢以顯示兩列。第一列應包含 ORDER_ID,第二列應根據 ORDER_TOTAL > 500 顯示 YES/NO 表示是否享受免運費。
解決方案
顯示 ORDER_ID 和基於 ORDER_TOTAL 條件的免運費結果的查詢可以如下編寫。
示例
SELECT ORDER_ID, CASE WHEN ORDER_TOTAL > 500 THEN ‘YES’ ELSE ‘NO’ AS FREE_SHIPPING END FROM ORDERS
我們將使用 CASE 表示式,透過它可以實現一個邏輯來檢查 ORDER_TOTAL。如果 ORDER_TOTAL 大於 500,則對於免運費將得到“YES”,否則將得到“NO”。查詢將返回兩列 ORDER_ID 和 FREE_SHIPPING。
例如,如果我們有以下 ORDERS DB2 表。
| ORDER_ID | ORDER_TOTAL |
| Z22345 | 342 |
| Z62998 | 543 |
| Z56990 | 431 |
| Z56902 | 6743 |
| Z99781 | 443 |
| Z56112 | 889 |
那麼使用 CASE WHEN 表示式的 SQL 查詢將返回以下結果。
| ORDER_ID | FREE_SHIPPING |
| Z22345 | NO |
| Z62998 | YES |
| Z56990 | NO |
| Z56902 | YES |
| Z99781 | NO |
| Z56112 | YES |
廣告
資料結構
網路
關係資料庫管理系統 (RDBMS)
作業系統
Java
iOS
HTML
CSS
Android
Python
C語言程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP