SQLの CASE文の構文を教えてください。
SQL における CASE ステートメントは、条件に応じてデータに条件判定と割り当てを行うために使用されます。
CASE文の基本的な構文は次の通りです。
CASE
WHEN condition1 THEN result1
WHEN condition2 THEN result2
...
ELSE result
END
CASE文の実行手順は次のとおりです。
- まずは、条件(condition1、condition2など)にあてはまるかどうかを順に判断し、条件にあてはまった場合は対応する結果(result1、result2など)を返します。
- 条件が一致しない条件-結果対がなければELSEの部分の結果を返す。
- ELSE がない場合には NULL をかえす。
CASE文には、「Searched CASE」や「Simple CASE」といった簡潔な書き方もあります。
ネイティブの日本語で言い換え: 検索されたケース
CASE
WHEN condition1 THEN result1
WHEN condition2 THEN result2
...
ELSE result
END
Simple CASE文の構文:
CASE expression
WHEN value1 THEN result1
WHEN value2 THEN result2
...
ELSE result
END
「Searched CASE」と「Simple CASE」の実行プロセスは基本文法は同じで、条件の判定方法が異なるだけである。
CASE文はSQLにおいて条件判定と値の代入を行うもので、条件に応じて複数の結果を判定できます。