IF ステートメント
IF ステートメントは、条件の評価に基づいて実行パスを選択します。
構文
説明
- 検索条件
- SQL ステートメントを呼び出す条件を指定します。 条件が不明 であったり偽である場合は、条件が真になるか、 処理が ELSE 文節に到達するまで、処理は次の検索条件に継続されます。
- SQLプロシージャ文
- 前の search-condition が真の場合に呼び出されるステートメントを指定します。 どの search-condition の評価も真に ならない場合には、ELSE キーワードの後に続く SQL-procedure-statement が 呼び出されます。 文は、SQL-procedure-statement (external ) の下にリストされている文のいずれかでなければなりません。
注
SQLSTATE 変数と SQLCODE SQL 変数に関する考慮事項: IF ステートメント内の最初の SQL-procedure-statement の実行時に、SQLSTATE 変数と SQLCODE SQL 変数には、その IF ステートメントの検索条件を評価した結果が反映されます。 IF ステートメントに ELSE 文節が含まれておらず、どの検索条件も真と評価されない場合には、その IF ステートメントの後続のステートメントの実行時に、SQLSTATE 変数と SQLCODE SQL 変数には、その IF ステートメントの検索条件を評価した結果が反映されます。
例
SQL 変数 rating の値を基にして SQL 変数 new_salary に値を割り当てます。
IF rating = 1
THEN SET new_salary =
new_salary + (new_salary * .10);
ELSEIF rating = 2
THEN SET new_salary =
new_salary + (new_salary * .05);
ELSE SET new_salary =
new_salary + (new_salary * .02);
END IF 