Qualify

Qualifyステートメントは、項目名の修飾を切り替える際に使用します (項目名がプレフィックスとしてテーブル名を取得するなど)。

構文:  

Qualify *fieldlist

 

項目名をテーブル名で修飾するqualifyステートメントでは、異なるテーブルにある同じ名前の項目の自動結合を一時的に無効にできます。その結果、テーブルで検出された際に項目名が変更されます。新しい名前は、tablename.fieldnameの形式になります。Tablenameは現在のテーブルのラベルに相当します。ラベルが存在しない場合は、LOAD および SELECT ステートメントで from の後に現れる名前が採用されます。

修飾は、qualifyステートメントの後にロードされたすべての項目で行われます。

スクリプトの実行開始時、デフォルトでは修飾が常に無効に設定されています。qualifyステートメントを使用すれば、いつでも項目名の修飾を有効にできます。修飾を無効にするには、Unqualifyステートメントを使用します。

注: qualifyステートメントは、パーシャル リロードと併用できません。

引数:  

引数 説明
*fieldlist 修飾を有効にする項目のコンマ区切りリスト。 項目リストに*を使用すると、すべての項目が対象となります。項目名にはワイルドカード文字の *および? を使用できます。ワイルドカード文字を使用する際、項目名を引用符で囲む必要がある場合があります。

例1:  

Qualify B;

LOAD A,B from x.csv;

LOAD A,B from y.csv;

2 つのテーブル x.csvおよび y.csv は、A のみが関連付けられます。3 つの項目の結果は次の通りです。Ax.By.B

例2:  

不慣れなデータベースでは、例に挙げるように、最初は 1 つまたは 2 ~ 3 の項目を関連付けることから始めるといいでしょう。

qualify *;

unqualify TransID;

SQL SELECT * from tab1;

SQL SELECT * from tab2;

SQL SELECT * from tab3;

テーブルtab1tab2tab3 の関連付けには、TransID のみが使用されます。

参照項目: