メイン コンテンツをスキップする

テーブルの連結

このページ上

関連する学習

テーブルの連結

連結は、2 つのテーブルを 1 つにまとめる操作です。

2 つのテーブルは単純に足し合わされます。つまり、データは変更されず、作成されるテーブルには元の 2 つのテーブルの合計と同じ数のレコードが含まれます。複数の連結操作を連続で実行して、複数のテーブルを連結したテーブルを作成できます。

自動連結

If the field names and the number of fields of two or more loaded tables are exactly the same, Qlik Sense will automatically concatenate the content of the different statements into one table.

Example:  

LOAD a, b, c from table1.csv;

LOAD a, c, b from table2.csv;

その結果の内部テーブルには、項目 ab、および c が含まれています。レコード件数は、テーブル 1 とテーブル 2 の合計レコード数になります。

注: 項目の数と名前は、完全に同じでなければなりません。2 つのステートメントの順序は任意に指定できます。

強制連結

複数のテーブルにまったく同じ項目セットが存在しない場合でも、Qlik Sense は 2 つのテーブルを強制的に連結できます。強制連結は、スクリプトで concatenate プレフィックスを使用すると実行できます。このプレフィックスは、特定のテーブルを別の名前のテーブルまたは最後に作成されたテーブルに連結します。

Example:  

LOAD a, b, c from table1.csv;

concatenate LOAD a, c from table2,csv;

 

その結果の内部テーブルには、項目 ab、および c が含まれています。結果として生成されるテーブルのレコード件数は、テーブル 1 とテーブル 2 の合計レコード数になります。テーブル 2 から取得したレコードの項目 b の値は、NULL です。

注: 先にロードされたテーブルの名前が concatenate ステートメントで指定されている場合を除き、concatenate プレフィックスは最後に作成されたテーブルを使用します。そのため、2 つのステートメントの順序を任意に指定することはできません。

連結の防止

ロードされた複数のテーブルの項目名と項目数が完全に一致する場合、Qlik Sense はさまざまなステートメントのコンテンツを 1 つのテーブルに連結します。noconcatenate ステートメントを使用すると、この動作を防止することができます。関連付けられた LOAD または SELECT ステートメントでロードされたテーブルは、既存のテーブルに連結されません。

Example:  

LOAD a, b, c from table1.csv;

noconcatenate LOAD a, b, c from table2.csv;