IF
文を使用すると、ブール式の値に応じて、一連の文を実行するか、またはスキップできます。 詳細は、「条件テスト(IF文およびCASE文)」を参照してください。
構文
if_statement ::=
キーワードとパラメータの説明
boolean_expression
この式の値がTRUE
の場合にのみ、THEN
の後の文が実行されます。
ELSE
制御がこのキーワードに達すると、その後の文が実行されます。 これは、boolean_expression
にTRUE
の値がなかった場合に発生します。
ELSIF
以前のboolean_expression
にTRUE
の値がなかった場合に評価される、boolean_expression
の開始を知らせます。
THEN
式がTRUE
を戻した場合、THENキーワードの後の文が実行されます。
使用上の注意
IF
文には、IF-THEN
、IF-THEN-ELSE
およびIF-THEN-ELSIF
の3つの形式があります。 IF
文の最も単純な形式では、ブール式を、キーワードTHEN
とEND
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
文はネストできます。
関連トピック