Add
スクリプト内の任意の LOAD または SELECT ステートメントに Add プレフィックスを追加して、別のテーブルにレコードを追加するように指定できます。また、このステートメントを部分的なリロードで実行する必要があることも指定します。Add プレフィックスは Map ステートメントでも使用できます。
情報メモ部分的なリロードが正しく機能するためには、部分的なリロードがトリガーされる前に、アプリをデータで開く必要があります。
[リロード] ボタンを使用して部分的なリロードを実行します。詳細については、「ボタン」を参照してください。Qlik Engine JSON API を使用することもできます。
構文:
Add [only] [Concatenate[(tablename)]] (loadstatement |
selectstatement)
Add [only] mapstatement
通常の (部分的ではない) リロード中、Add LOAD 構造は通常の LOAD ステートメントとして機能します。レコードが生成され、テーブルに保存されます。
Concatenate プレフィックスが使用されている場合、または同じ項目のセットを持つテーブルが存在する場合、レコードは関連する既存のテーブルに追加されます。それ以外の場合、Add LOAD 構造は新しいテーブルを作成します。
部分的なリロードでも同じことができます。唯一の違いは、Add LOAD 構造が新しいテーブルを作成しないことです。レコードを追加する必要がある前のスクリプト実行からの関連テーブルが常に存在します。
その際、重複チェックは行われないため、Add プレフィックスを使用するステートメントには、多くの場合、重複を防ぐ distinct 修飾子または where 節を記述します。
Add Map...Using ステートメントでは、パーシャル スクリプトの実行中もマッピングが発生します。
引数:
引数
only |
ステートメントが部分的なリロード中にのみ実行される必要があることを示すオプションの修飾子。通常の (部分的ではない) リロード中は無視する必要があります。 |
Tab1: LOAD Name, Number FROM Persons.csv; Add LOAD Name, Number FROM newPersons.csv; |
通常のリロードでは、データは Persons.csv からロードされ、Qlik Sense テーブル Tab1 に保存されます。NewPersons.csv のデータは、同じ Qlik Sense テーブルに連結されます。
パーシャル リロードを実行している場合、データは NewPersons.csv からロードされ、Qlik Sense テーブル Tab1 に追加されます。重複チェックは実行されません。
|
Tab1: SQL SELECT Name, Number FROM Persons.csv; Add LOAD Name, Number FROM NewPersons.csv where not exists(Name); |
重複チェックは、Name が以前にロードされたテーブル データに存在するかどうか確認することで行われます。
Exists - スクリプト関数
通常のリロードでは、データは Persons.csv からロードされ、Qlik Sense テーブル Tab1 に保存されます。NewPersons.csv のデータは、同じ Qlik Sense テーブルに連結されます。
パーシャル リロードを実行している場合、データは NewPersons.csv からロードされ、Qlik Sense テーブル Tab1 に追加されます。重複チェックは、Name が以前にロードされたテーブル データに存在するかどうか確認することで行われます。
|
Tab1: LOAD Name, Number FROM Persons.csv; Add Only LOAD Name, Number FROM NewPersons.csv where not exists(Name); |
通常のリロードでは、データは Persons.csv からロードされ、Qlik Sense テーブル Tab1 に保存されます。NewPersons.csv をロードするステートメントは無視されます。
パーシャル リロードを実行している場合、データは NewPersons.csv からロードされ、Qlik Sense テーブル Tab1 に追加されます。重複チェックは、Name が以前にロードされたテーブル データに存在するかどうか確認することで行われます。
Exists - スクリプト関数
|