選択要求はいくつかのTeradata SQL SELECT文からなっており、オプションとして先頭にLOCKING修飾子が付いていることもあります。FastExportジョブ内の選択要求の作成方法によっては、以下の情報がFastExportジョブに適用される可能性があります。
IMPORTコマンド
IMPORTコマンドを使用している場合、FastExportは、FIELDコマンドで指定されているように、選択データ レコードごとに1回ずつ選択要求を実行します。この場合、選択要求の実行ごとの応答データは出力データセットに連結されます。
IMPORTコマンドで入力変数がWHERE条件に定義されている場合、WHERE条件に示されている外部名は、FIELDコマンドにある名前と対応していなければなりません。
複数のSELECT文
選択要求に複数のSELECT文が指定されている場合、データベースはこれらのSELECT文を並行して実行できますが、応答データは、やはり、最初の文に対応する応答データが最初に、2番目の文に対応する応答データが2番目に、というように逐次戻されます。
出力レコードを処理するためにOUTMODルーチンを指定する場合は、データベースはFastExportジョブの文番号に各SELECT文ごとの応答データを付けて戻します。それ以外の場合、出力データセットには文のレコードと文のレコードを区切るものが何も戻されません。
LOCKING修飾子
LOCKING修飾子を使用している場合、指定されたロックは、その修飾子を含んでいる要求内にあるすべての文を実行してしまうまでは有効です。
- リクエスト内のいずれかのステートメントを実行する前に、リクエスト全体のすべてのリソース ロックを実装します。
- 要求のすべての応答データをスプール表に移動してしまうまでロックを保持します。 データベースは、データをクライアント システムに戻す前にリソース ロックを削除します。
Select文とTableオペレータ
TTU 14.10より、SELECT文のFROM句にTableオペレータを使用できます。Tableオペレータは、入力として表または表式を受け入れ、出力として表を生成します。このオペレータは、一種のユーザー定義関数(UDF)です。テーブル演算子の詳細については、Teradata Vantage™ - SQL関数、演算子、式および述部, B035-1145を参照してください。
選択要求の制約事項
FastExportの選択要求には次のような制約事項があります。
- USING修飾子の指定
データ パラメータをSELECT文の制限パラメータとして実行依頼するには、サポートしているFIELDコマンドおよびFILLERコマンドを指定したFastExportのIMPORTコマンドを使い、それらのパラメータを定義する必要があります。
- SELECT DATEまたはSELECT USERなどのデータのないテーブルへのアクセス
上記の制約事項とは別に、データベースがFastExportから実行するSELECT文の構文解析と処理は、他のデータ アクセス機能から実行する場合と同じようになります。