QlikViewのロードスクリプト上でテーブル結合する方法を知りたい
この記事は、BIツール導入支援及びDWH構築支援を15年以上続けてきたINSIGHT LABの中の人が書いています。
今回ご紹介するのは、別々のテーブルに格納しているシートを一つにしたい場合など、ロードスクリプト上でまとめてしまう方法です。
QlikViewのロードスクリプト上でテーブルを結合する関数
①join関数
join句は、ロードされたテーブルを既存の指定されたテーブルまたは直前に作成されたデータテーブルと結合します。
構文は次のとおりです。
join (tablename )
例:
//abc.csvファイルを結合する。
Join LOAD * FROM abc.csv;
//table1をSQLで取得し、テーブルをくっつける。
Join SQL SELECT * FROM table1;
等と使います。join句に近いものとしては「keep句」がありますが、ここでは、割愛します。
②Join句の前に置くことができる関数(left,right,innner,outer)
join の前に使用すると、例えば、left joinと設定すると左側に結合することができます。
例:
left( join | keep) [ (tablename ) ](loadstatement |selectstatement )
例:
Table1 Table2
A B A C
1 aa 1 xx
2 cc 4 zz
3 ee
QVTable:
select * from table1;
left join select * from table2;
QVTable
結果は以下のようなテーブルが生成されます。
A B C
1 aa xx
2 cc
3 ee
となり、連結項目値は、最初のテーブルに示されます。
left join(table)句は最も使用頻度が高く、扱い易い句なので、まず、このjoin句押さえて発展させる方が良いかと思います。