Qlik SenseではエクセルファイルやODBCを利用したデータロードが可能です。
個人的にエクセルファイルなどを利用してのクイックデータロードは邪道だと思っているので、ODBCを利用してMySQLからデータロードを行います。
サンプルのデータは下記のサイトのものを利用しています。
データ分析の勧め ~Excelを使って自社の業務データを整理・分析してみよう!~ その3 (p2)
少しデータを加工して、下のようにテーブルを構築します。
CREATE TABLE tbl_sample_sales( sys_code INT(8), item_code INT(8), item_name VARCHAR(255), sale_date DATE, supplier_code CHAR(4), sale_number INT(8), sale_price INT(8), sale_profit_price INT(8), PRIMARY KEY(sys_code) )ENGINE = INNODB; CREATE TABLE mst_sample_supplier( supplier_code CHAR(4), supplier_name VARCHAR(255), PRIMARY KEY(supplier_code) )ENGINE = INNODB;
次にデータをエクセルファイルからCSVに加工します。
加工したCSVはこちら。
tbl_samle_sales.csv
mst_sample_supplier.csv
実際にテーブルに入れ込みます。
LOAD DATA LOCAL INFILE 'C:/Users/USER NAME/Desktop/tbl_samle_sales.csv' INTO TABLE tbl_sample_sales FIELDS TERMINATED BY ',' IGNORE 1 LINES; LOAD DATA LOCAL INFILE 'C:/Users/USER NAME/Desktop/mst_sample_supplier.csv' INTO TABLE mst_sample_supplier FIELDS TERMINATED BY ',' IGNORE 1 LINES;
テーブルが完成したらODBCドライバを準備します。
ODBCドライバは以下からダウンロード・インストールしてください。
My SQL ODBCドライバ
インストールが完了したら以下のように設定を開始します。
1.コントロールパネル>管理ツール>データ ソース (ODBC)
2.ODBCを準備します。
これでODBCの準備は完了です。
次にQlik Senseをインストールします。
Qlik Sense Desktop
インストールが完了したら起動します。
起動が完了したら右上の「アプリの新規作成」ボタンを押してください。
アプリ名は適当に「sample」とでもします。
そしてアプリを起動します。
すると下の画面が起動します。
では、早速データロードをしてみましょう。
赤枠の部分を押してください。
次に「接続の新規作成」>「ODBC」を押します。
下の画面が開くので、先ほど作ったODBCの接続設定を選択します。
こんな感じです。
※「システムDSN」から「ユーザーDSN」への切り替えをお忘れなく。
問題なく保存できると画面の右側に接続設定が現れます。
次に接続設定の真ん中のテーブルのようなマークを押します。
すると下のような画面が現れるので、左上のセレクトボックスからDBを選択します。
そうすると最初に構築したテーブルが出てくるので、両方ともにチェックを入れて「スクリプトを挿入」ボタンを押します。
こんなスクリプトが吐き出されます。
※「wmapp_qlik」となっている部分はご自身のDB名に変更してください。
LIB CONNECT TO 'localhost'; LOAD `supplier_code`, `supplier_name`; SQL SELECT `supplier_code`, `supplier_name` FROM `wmapp_qlik`.`mst_sample_supplier`; LOAD `sys_code`, `item_code`, `item_name`, `sale_date`, `supplier_code`, `sale_number`, `sale_price`, `sale_profit_price`; SQL SELECT `sys_code`, `item_code`, `item_name`, `sale_date`, `supplier_code`, `sale_number`, `sale_price`, `sale_profit_price` FROM `wmapp_qlik`.`tbl_sample_sales`;
ここまで出来たら、あとは右上の「データのロード」ボタンを押すとデータロードが完了します。
これでデータロードは完了です。
ちなみにSQLを書ける人ならわかると思いますが、このスクリプトの「SQL」以降はselect文です。
また、LOAD以降はQlikSense内で利用する列名を表しています。
ここらへんを工夫すると、Qlik Sense内でのJoinが勝手に行われたりするのですが、ここら辺の詳細は別途説明します。