スクリプトのプレフィックス
プレフィックスは、必要に応じて正規ステートメントに適用できますが、制御ステートメントには適用できません。ただし、when および unless プレフィックスは、一部の制御ステートメント節のサフィックスとして使用できます。
スクリプトのキーワードは、いずれも小文字と大文字の組み合わせが可能です。ただし、ステートメントで使用される項目名と変数名は大文字と小文字が区別されます。
各関数のドロップダウンを使用すると、その関数の簡単な説明や構文を確認できます。詳細を表示するには、構文の説明にある関数名をクリックします。
QVD ファイルは、buffer プレフィックスを使用して、自動的に作成、管理することができます。このプレフィックスは、スクリプトの LOAD ステートメントおよび SELECT ステートメントのほとんどで使用できます。つまり、ステートメントの結果をキャッシュ/バッファする際には、QVD ファイルが使用されます。
Buffer[(option [ , option])] ( loadstatement | selectstatement )
option::= incremental | stale [after] amount [(days | hours)]
連結される 2 つのテーブルに異なる項目セットが存在する場合、Concatenate プレフィックスを使用すると 2 つのテーブルを強制的に連結できます。
concatenate[ (tablename ) ] ( loadstatement | selectstatement )
crosstable ロード プレフィックスは、「クロス テーブル」または「ピボット テーブル」の構造化データを転置するために使用されます。このように構造化されたデータは、スプレッドシート ソースを操作するときによく見られます。crosstable ロード プレフィックスの出力と目的は、このような構造を通常の列指向のテーブルに変換することです。これは、この構造のほうが Qlik Sense での分析に適しているためです。
crosstable (attribute field name, data field name [ , n ] ) ( loadstatement | selectstatement )
First または LOAD ステートメントへの SELECT (SQL) プレフィックスは、データ ソース テーブルから最大レコード数をロードする際に使用します。
First n( loadstatement | selectstatement )
Generic ロード プレフィックスを使用すると、エンティティ属性値モデル化データ (EAV) を従来の正規化されたリレーショナル テーブル構造に変換できます。EAV モデリングは、「汎用データ モデリング」または「オープン スキーマ」とも呼ばれます。
Generic ( loadstatement | selectstatement )
hierarchy プレフィックスを使用して、親子階層テーブルを、Qlik Sense データ モデルで有用なテーブルに変換します。これは、LOAD や SELECT ステートメントの前に置き、ロード ステートメントの結果をテーブル変換の入力として使用します。
Hierarchy (NodeID, ParentID, NodeName, [ParentName], [PathSource], [PathName], [PathDelimiter], [Depth])(loadstatement | selectstatement)
このプレフィックスを使用して、親子階層テーブルを、Qlik Sense データ モデルで有用なテーブルに変換します。これは、LOAD や SELECT ステートメントの前に置き、ロード ステートメントの結果をテーブル変換の入力として使用します。
HierarchyBelongsTo (NodeID, ParentID, NodeName, AncestorID, AncestorName, [DepthDiff])(loadstatement | selectstatement)
join および keep プレフィックスの前には、プレフィックス inner を置くことができます。
join の前に使用すると、内部結合を指定できます。結果のテーブルには、生データ テーブルからの項目値の組み合わせのみが含まれます。連結項目値は双方のテーブルに示されます。keep の前に使用すると、Qlik Sense に保存される前に、双方の生データ テーブルが共通部分に縮小されます。
.Inner ( Join | Keep) [ (tablename) ](loadstatement |selectstatement )
IntervalMatch プレフィックスを使うと、不連続数値を 1 つ以上の数値間隔に一致させるテーブル、そしてオプションとして 1 つ以上の追加キーの値を一致させるテーブルを作成できます。
IntervalMatch (matchfield)(loadstatement | selectstatement )
IntervalMatch (matchfield,keyfield1 [ , keyfield2, ... keyfield5 ] ) (loadstatement | selectstatement )
join プレフィックスは、ロード済みのテーブルを名前が付いた既存テーブルまたは直前に作成されたデータ テーブルと結合します。
[Inner | Outer | Left | Right ] Join [ (tablename ) ]( loadstatement | selectstatement )
keep プレフィックスは join プレフィックスに類似しています。join プレフィックスのように、ロード済みテーブルと既存の名前付きテーブルまたは直前に作成されたデータ テーブルを比較します。しかし、ロード済みテーブルと既存のテーブルを結合する代わりに、テーブル データの共通部分に基づき、Qlik Sense に保存される前に、2 つのうち一方または両方のテーブルを縮小する効果があります。実施された比較は、すべての共通項目で行われる自然結合に相当します (対応する結合と同じ方法など)。ただし、2 つのテーブルは結合されず、別の名前付きテーブルとして Qlik Sense に保存されます。
(Inner | Left | Right) Keep [(tablename ) ]( loadstatement | selectstatement )
Join および Keep プレフィックスの前には、プレフィックス left を置くことができます。
join の前に使用すると、左結合を指定します。結果のテーブルには、生データ テーブルからの項目値の組み合わせのみが含まれます。連結項目値は最初のテーブルに示されます。keep の前に使用すると、Qlik Sense に保存される前に、2 つ目の生データ テーブルは 1 つ目のテーブルとの共通部分に縮小されます。
Left ( Join | Keep) [ (tablename) ](loadstatement |selectstatement )
mapping プレフィックスは、マッピング テーブルの作成に使用します。マッピング テーブルは、スクリプト実行中に項目値と項目名を置き換えるといった操作で使用できます。
Mapping ( loadstatement | selectstatement )
Merge プレフィックスをスクリプト内の任意の LOAD または SELECT ステートメントに追加して、ロードされたテーブルを別のテーブルに統合する必要があることを指定できます。また、このステートメントを部分的なリロードで実行する必要があることも指定します。
Merge [only] [(SequenceNoField [, SequenceNoVar])] On ListOfKeys [Concatenate [(TableName)]] (loadstatement | selectstatement)
NoConcatenate プレフィックスは、同一の項目セットでロードされた 2 つのテーブルを、強制的に別個の内部テーブルとして扱います (そうでない場合、自動的に連結されます)。
NoConcatenate( loadstatement | selectstatement )
外部結合を指定するために、明示的な Join プレフィックスの前にプレフィックス Outer を付加できます。外部結合では、2 つのテーブル間のすべての組み合わせが生成されます。結果のテーブルには、生データ テーブルからの項目値の組み合わせが含まれます。連結項目値は一方または双方のテーブルに示されます。Outerキーワードはオプションで、結合プレフィックスが指定されていない場合のデフォルトの結合タイプです。
Outer Join [ (tablename) ](loadstatement |selectstatement )
フル リロードは、常に既存のデータ モデルのすべてのテーブルを削除することから始まり、次にロード スクリプトを実行します。
A 部分的なリロード はこれを行いません。代わりに、データ モデル内のすべてのテーブルを保持し、[Add]、[Merge]、または [Replace] プレフィックスが前に付いた [Load] ステートメントと [Select] ステートメントのみを実行します。他のデータ テーブルはコマンドの影響を受けません。引数 only は、ステートメントが部分的なリロード中にのみ実行され、フル リロード中には無視されることを示します。次の表は、部分的および完全なリロードのステートメントの実行の概要です。
Join および Keep プレフィックスの前には、プレフィックス right を置くことができます。
join の前に使用すると、右結合を指定します。結果のテーブルには、生データ テーブルからの項目値の組み合わせのみが含まれます。連結項目値は 2 番目のテーブルに示されます。keep の前に使用すると、Qlik Sense に保存される前に、1 つ目の生データ テーブルは 2 つ目のテーブルとの共通部分に縮小されます。
Right (Join | Keep) [(tablename)](loadstatement |selectstatement )
sample または LOAD ステートメントの SELECT プレフィックスは、データ ソースからランダムにレコード サンプルをロードする際に使用します。
Sample p ( loadstatement | selectstatement )
semantic プレフィックスを使用すると、レコード間の関係を含むテーブルをロードできます。これはテーブル内における、親 (会社) や所属先、前任者といった 1 つのレコード ポイントから別のポイントへの自己参照です。
Semantic ( loadstatement | selectstatement)
unless プレフィックスとサフィックスは、条件節の作成に使用します。条件節は、ステートメントまたは exit 節を評価するかどうかを決定します。これは、if..end if ステートメントの簡単な代替として使用されることがあります。
(Unless condition statement | exitstatement Unless condition )
when プレフィックスとサフィックスは、条件節の作成に使用します。条件節は、ステートメントまたは exit 節を実行するかどうかを決定します。これは、if..end if ステートメントの簡単な代替として使用されることがあります。
( When condition statement | exitstatement when condition )