Keep
keep 前置詞類似於 join 前置詞。與 join 前置詞一樣,它會比較已載入的表格與現有具名表格或最後一個先前建立的資料表格,而不會聯結已載入的表格與現有表格,它會在將一個或兩個表格儲存在 Qlik Sense 中之前,根據表格資料的交集進行減少。進行比較相當於在所有通用欄位上進行自然聯結,也就是如同對應聯結中的方法。不過,兩個表格並未聯結,而是以兩個個別的具名表格保留在 Qlik Sense 中。
語法:
(inner | left | right) keep [(tablename ) ]( loadstatement | selectstatement )
keep 前置詞前面可以加上 inner、left 或 right 前置詞的其中一個。
Qlik Sense 指令碼語言中明確的 join 前置詞會執行兩個表格的完整聯結。結果會是一個表格。在許多情況下,這樣的聯結會產生非常大的表格。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;