このテストでは、最新のIFまたはELSEコマンドの直前のTeradata SQLリクエストの実行結果が対象になります。分岐は、それより前のリクエストの結果に基づきます。
バッチ モードで実行させるBTEQのスクリプトを作成する場合には、コマンドを使用して条件をテストし、特定の命令ブロックのみを実行するかスクリプトの別の場所にスキップさせることにより、結果に応じた処理を行ないます。
次の3種類のコマンド シーケンスを使用できます。
コマンド名 | 関数 |
---|---|
IF...THEN... | IF...THENコマンドは、IF句の明示的に指定された条件に基づいて単一の命令を実行、または実行しないことによって分岐を有効にします。IF句に指定された条件がTRUEの場合、BTEQはTHEN句に指定された命令を実行せず、次のコマンドを実行します。 |
GOTO...LABEL | GOTOコマンドは、ラベル名の値を指定します。BTEQは、一致する名前を指定するLABELコマンドが見つかるまで、後続の入力命令をすべてスキップします。ラベルが見つかるかBTEQがスクリプトの最後に到達するまで、スクリプトの以降の行はスキップされます。したがって、GOTOコマンドを使用する場合は、ラベル名を識別するLABELコマンドをスクリプトの後方に入れる必要があります。 |
IF...ELSEIF...ELSE...END | このコマンド シーケンスは、複数の命令ブロックを実行またはバイパスすることで、分岐を有効にします。ELSEIFブロックとELSEブロックの使用は任意です。IF、ELSEIF、およびELSEコマンドでTRUEに解決される最初の(明示的または暗黙の)条件セットで、分岐が決まります。 |