機能
条件付き実行制御を行います。
記述形式

参照項番
探索条件 → “2.12 探索条件”
SQL手続き文 → “5.1 ストアドプロシジャの概要”
一般規則
探索条件には比較述語およびNULL述語しか記述することはできません。また、比較述語に副問合せを指定することはできません。
探索条件の比較述語で指定する値式のデータ型は、比較可能であることが必要です。
比較可能なデータ型は、“2.10.1 数値式”を参照してください。
探索条件に指定する値式にはCASE式およびROWNUMを指定することはできません。
1つ以上のIF文ELSEIF句が指定されている場合、以下のようなIF文ELSEIF句を含まないように指定したIF文と等価になります。
IF <探索条件1> THEN <SQL手続き文1> ; ELSEIF <探索条件2> THEN <SQL手続き文2> ; ELSEIF <探索条件3> THEN <SQL手続き文3> ; ELSE <SQL手続き文4> ; END IF ;
IF <探索条件1> THEN
<SQL手続き文1> ;
ELSE
IF <探索条件2> THEN
<SQL手続き文2> ;
ELSE
IF <探索条件3> THEN
<SQL手続き文3> ;
ELSE
<SQL手続き文4> ;
END IF ;
END IF ;
END IF ;IF文の探索条件の結果は、真の場合、偽の場合、NULLの場合およびエラーの場合があります。真の場合は、THEN句の続きのSQL手続き文を実行します。他の場合、ELSE句が指定されていれば、ELSE句の続きのSQL手続き文を実行します。
使用例
IF文の定義をします。
BEGIN
DECLARE A INT;
DECLARE B INT;
:
IF A = 1 THEN
INSERT INTO SCM.TBL(C,D) VALUES(1,2); ←条件が真の場合
ELSE
INSERT INTO SCM.TBL(C,D) VALUES(3,4); ←条件が偽の場合
END IF;
END