ヘッダーをスキップ
Oracle Database PL/SQL言語リファレンス
11g リリース1(11.1)
E05670-03
  目次
目次
索引
索引

戻る
戻る
 
次へ
次へ
 

IF文

IF文を使用すると、ブール式の値に応じて、一連の文を実行するか、またはスキップできます。 詳細は、「条件テスト(IF文およびCASE文)」を参照してください。

構文

if_statement ::=

if_statement
if_statement.gifの説明

boolean_expression ::=

キーワードとパラメータの説明

boolean_expression

この式の値がTRUEの場合にのみ、THENの後の文が実行されます。

ELSE

制御がこのキーワードに達すると、その後の文が実行されます。 これは、boolean_expressionTRUEの値がなかった場合に発生します。

ELSIF

以前のboolean_expressionTRUEの値がなかった場合に評価される、boolean_expressionの開始を知らせます。

THEN

式がTRUEを戻した場合、THENキーワードの後の文が実行されます。

使用上の注意

IF文には、IF-THENIF-THEN-ELSEおよびIF-THEN-ELSIFの3つの形式があります。 IF文の最も単純な形式では、ブール式を、キーワードTHENEND IFで囲まれた一連の文に関連付けます。 一連の文は、式がTRUEを戻す場合にのみ実行されます。 式がFALSEまたはNULLを戻す場合、IF文は何も実行しません。 いずれの場合も、制御は次の文に渡されます。

IF文の2つ目の形式では、キーワードELSEが追加され、その後に一連の代替文を続けます。 ブール式がFALSEまたはNULLを戻す場合にのみ、ELSE句内の一連の文が実行されます。 このように、ELSE句では必ず一連の文が実行されます。

IF文の3つ目の形式では、キーワードELSIFを使用して別のブール式を追加します。 最初の式がFALSEまたはNULLを戻す場合、ELSIF句は別の式を評価します。 IF文は任意の数のELSIF句を持つことができます。最後のELSE句はオプションです。 ブール式は上から下に1つずつ評価されます。 いずれかの式がTRUEを戻す場合は、それに関連する一連の文が実行され、制御は次の文に移ります。 すべての式がFALSEまたはNULLを戻す場合は、ELSE句内の一連の文が実行されます。

一連の文が1つでも実行されると、IF文の処理は終了します。このため、一連の文が複数回実行されることはありません。 ただし、THEN句とELSE句には、さらにIF文を入れることができます。 つまり、IF文はネストできます。

関連トピック