CASEcase_valueWHENwhen_valueTHENstatement_list[WHENwhen_valueTHENstatement_list] ... [ELSEstatement_list] END CASE
または
CASE
WHEN search_condition THEN statement_list
[WHEN search_condition THEN statement_list] ...
[ELSE statement_list]
END CASE
ストアドルーチンに対するCASEステートメントは複雑な条件コンストラクトを実装します。search_conditionが真の場合、該当するSQLステートメントが実行されます。検索条件が合致しない場合、ELSE節内のステートメントリストが実行されます。各statement_listは複数のステートメントから成り立っています。
注:ストアドルーチンの内部で使用する目的でここに示したCASEステートメントの構文は、
(項11.2. 「制御フロー関数」)で説明されたCASE表現とは若干異なっています。CASE
ステートメントにELSE
NULL節を含めることはできません。これを持たせると、それは、ENDの代わりにEND
CASEを使って消去されます。
