在 SQL 中,可以使用 CASE 語句來實現類似于 decode 函數的條件判斷。CASE 語句允許你根據一個或多個條件返回不同的值。以下是一個簡單的示例:
SELECT column1, column2,
CASE
WHEN condition1 THEN result1
WHEN condition2 THEN result2
ELSE result3
END AS new_column
FROM table_name;
這里,condition1
和 condition2
是你要判斷的條件,result1
和 result2
是相應條件滿足時要返回的結果,result3
是當沒有任何條件滿足時返回的結果。new_column
是根據條件判斷生成的新列。
例如,假設我們有一個員工表(employees),包含員工的 ID、姓名、年齡和部門。我們想要根據員工的年齡段來顯示不同的年齡分組。可以使用以下 SQL 查詢:
SELECT id, name, age, department,
CASE
WHEN age < 30 THEN 'Young'
WHEN age BETWEEN 30 AND 50 THEN 'Middle-aged'
ELSE 'Senior'
END AS age_group
FROM employees;
這將返回一個包含所有員工信息以及根據年齡段生成的新列 age_group
的結果集。