Qualify
Qualify ステートメントは、項目名の修飾を切り替える際に使用します (項目名がプレフィックスとしてテーブル名を取得するなど)。
構文:
Qualify *fieldlist
項目名をテーブル名で修飾する qualify ステートメントでは、異なるテーブルにある同じ名前の項目の自動結合を一時的に無効にできます。その結果、テーブルで検出された際に項目名が変更されます。新しい名前は、tablename.fieldname の形式になります。Tablename は現在のテーブルのラベルに相当します。ラベルが存在しない場合は、LOAD および SELECT ステートメントで from の後に現れる名前が採用されます。
修飾は、qualify ステートメントの後にロードされたすべての項目で行われます。
スクリプトの実行開始時、デフォルトでは修飾が常に無効に設定されています。qualify ステートメントを使用すれば、いつでも項目名の修飾を有効にできます。修飾を無効にするには、Unqualify ステートメントを使用します。
引数:
引数 | 説明 |
---|---|
*fieldlist | 修飾を有効にする項目のコンマ区切りリスト。 項目リストに * を使用すると、すべての項目が対象となります。項目名にはワイルドカード文字の * および ? を使用できます。ワイルドカード文字を使用する際には、項目名を引用符で囲まなければならない場合があります。 |
例1:
Qualify B;
LOAD A,B from x.csv;
LOAD A,B from y.csv;
2 つのテーブル x.csv および y.csv は、A のみが関連付けられます。3 つの項目は、A、x.B、y.B という結果になります。
例2:
例に挙げているように、馴染みのないデータベースについては、1 つまたは少数の項目の関連付けから始めることをお勧めします。
qualify *;
unqualify TransID;
SQL SELECT * from tab1;
SQL SELECT * from tab2;
SQL SELECT * from tab3;
テーブルtab1、tab2、tab3 の関連付けには、TransID のみが使用されます。