CASE WHEN語句用于根據條件執行不同的操作或返回不同的值。它的基本語法如下:
CASE
WHEN condition1 THEN result1
WHEN condition2 THEN result2
...
ELSE default_result
END
其中,condition1、condition2等是條件表達式,result1、result2等是對應條件為真時的返回結果,default_result是當沒有條件滿足時的默認返回結果。
下面是一個例子,演示了如何使用CASE WHEN語句:
假設有一個名為"employees"的表,其中包含"first_name"和"last_name"列。現在需要根據員工的"first_name"和"last_name"顯示不同的稱謂,如果"first_name"是"John",“last_name"是"Doe”,則顯示"Mr. Doe",否則顯示"Ms. {last_name}"。
SELECT
CASE
WHEN first_name = 'John' AND last_name = 'Doe' THEN 'Mr. Doe'
ELSE CONCAT('Ms. ', last_name)
END AS title
FROM
employees;
這個例子中,CASE WHEN語句根據"first_name"和"last_name"的值決定返回的稱謂。如果"first_name"是’John’且"last_name"是’Doe’,則返回結果為"Mr. Doe",否則返回結果為"Ms. {last_name}"。