![]() |
|
Case ステートメントCase ステートメントは、カラム値ごとに異なる結果を生成する条件式を作成するための構築ブロックです。 Case (Switch )Case ステートメントのこの形式は、CASE (Lookup )形式とも呼ばれます。expression1 の値を調べ、次にWHEN 式を調べます。expression1 と任意のWHEN 式が一致する場合は、対応するTHEN 式の値を割り当てます。 expression1 が複数のWHEN 句の式に一致する場合、最初に一致したWHEN 句に続く式だけが割り当てられます。 どのWHEN式も一致しない場合は、ELSE式で指定された値を割り当てます。ELSE式が指定されない場合は、NULL値が割り当てられます。 Case (If) ステートメントも参照してください。 構文: CASE expression1 WHEN expression THEN expression {WHEN expression... THEN expression...} ELSE expression END 説明: CASE CASE ステートメントを開始します。1 つの式、1 つ以上のWHEN およびTHEN ステートメント、オプションのELSE ステートメント、およびEND キーワードが続く必要があります。 WHEN 満たす条件を指定します。 THEN 対応するWHEN式が満たされる場合に割り当てる値を指定します。 ELSE どのWHEN条件も満たされない場合に割り当てる値を指定します。指定しない場合は、ELSE NULLと見なされます。 END CASEステートメントを終了します。 例 CASE Score-par WHEN -5 THEN 'Birdie on Par 6' WHEN -4 THEN 'Must be Tiger' WHEN -3 THEN 'Three under par' WHEN -2 THEN 'Two under par' WHEN -1 THEN 'Birdie' WHEN 0 THEN 'Par' WHEN 1 THEN 'Bogey' WHEN 2 THEN 'Double Bogey' ELSE 'Triple Bogey or Worse' END 前述の例では、WHENステートメントは厳密に等しくならなければなりません。この例を示します。 WHEN < 0 THEN 'Under Par' このWHEN条件は、比較演算子が許可されていないため無効です。 Case (If)Case ステートメントのこの形式は各WHEN 条件を評価し、条件が満たされる場合は、対応するTHEN 式の値を割り当てます。 どのWHEN条件も満たされない場合は、ELSE式で指定されたデフォルトの値を割り当てます。ELSE式が指定されない場合は、NULL値が割り当てられます。 Case (Switch) ステートメントも参照してください。 構文: CASE WHEN request_condition1 THEN expression1 {WHEN request_condition2 THEN expression2} {WHEN request_condition... THEN expression...} ELSE expression END 説明: CASE CASEステートメントを開始します。1つ以上のWHENおよびTHENステートメント、オプションのELSEステートメント、およびENDキーワードが続く必要があります。 WHEN 満たす条件を指定します。 THEN 対応するWHEN式が満たされる場合に割り当てる値を指定します。 ELSE どのWHEN条件も満たされない場合の値を指定します。指定しない場合は、ELSE NULLとみなされます。 END CASEステートメントを終了します。 例 CASE WHEN score-par < 0 THEN 'Under Par' WHEN score-par = 0 THEN 'Par' WHEN score-par = 1 THEN 'Bogie' WHEN score-par = 2 THEN 'Double Bogey' ELSE 'Triple Bogey or Worse' END CASEステートメントのSwitch形式とは異なり、If形式のWHENステートメントは比較演算子を許可します。この例を示します。 WHEN < 0 THEN 'Under Par' このWHEN条件は有効です。 |
公開日 2017 年 9 月 | Copyright © 2005, 2017, Oracle. All rights reserved. Legal Notices. |