Keep
keep プレフィックスは join プレフィックスに類似しています。join プレフィックスのように、ロード済みテーブルと既存の名前付きテーブルまたは直前に作成されたデータ テーブルを比較します。しかし、ロード済みテーブルと既存のテーブルを結合する代わりに、テーブル データの共通部分に基づき、Qlik Sense に保存される前に、2 つのうち一方または両方のテーブルを縮小する効果があります。実施された比較は、すべての共通項目で行われる自然結合に相当します (対応する結合と同じ方法など)。ただし、2 つのテーブルは結合されず、別の名前付きテーブルとして Qlik Sense に保存されます。
構文:
(inner | left | right) keep [(tablename ) ]( loadstatement | selectstatement )
keep プレフィックスの前には、inner または left、right のプレフィックスを配置する必要があります。
Qlik Sense スクリプト言語における明示的な join プレフィックスは、2 つのテーブルの完全な結合を実行します。その結果、1 つのテーブルが生成されます。通常、このような結合を行うと、かなり大きなテーブルが作成されます。そのため、Qlik Sense では、テーブルを結合する代わりに複数のテーブル間で関連付けを行います。これにより、メモリの使用量が削減され、処理速度がアップすると同時に柔軟性が極めて高まります。このような理由から、一般的には Qlik Sense スクリプトでの明示的な結合は避ける必要があります。keep の機能は、明示的な結合の使用回数を減らすよう設計されています。
引数:
引数 | 説明 |
---|---|
tablename | 名前が付いたテーブルが、ロード済みのテーブルと比較されます。 |
loadstatementまたはselectstatement | ロード済みテーブルの LOAD または SELECT ステートメントです。 |
Inner Keep LOAD * from abc.csv;
Left Keep SELECT * from table1;
tab1:
LOAD * from file1.csv;
tab2:
LOAD * from file2.csv;
.. .. ..
Left Keep (tab1) LOAD * from file3.csv;