在SQL中,WHEN
是 CASE
表達式的一部分,用于指定每個 CASE
子句的條件。WHEN
后面必須跟一個條件表達式,表示當該條件為真時,執行該子句。
WHEN
子句通常與 CASE
結構一起使用,用于根據不同的條件執行不同的操作。以下是 WHEN
的使用方法:
WHEN
子句進行簡單的條件判斷:SELECT column1,
CASE
WHEN condition1 THEN result1
WHEN condition2 THEN result2
...
ELSE result
END AS result_column
FROM table_name;
在上面的示例中,根據不同的條件(condition1
、condition2
等),執行相應的操作并返回相應的結果列。
WHEN
子句進行復雜的條件判斷:SELECT column1,
CASE
WHEN condition1 AND condition2 THEN result1
WHEN condition3 OR condition4 THEN result2
...
ELSE result
END AS result_column
FROM table_name;
在上面的示例中,可以使用邏輯運算符(如 AND
、OR
)將多個條件組合起來,并根據復雜的條件執行相應的操作。
需要注意的是,WHEN
子句的順序非常重要,因為 CASE
表達式會從上到下逐一檢查每個 WHEN
子句,并執行第一個符合條件的子句。如果沒有任何條件為真,將執行 ELSE
子句中的操作。