> >

Qlik Sense 使い方 データロード(MySQL/ODBC)

スポンサーリンク

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

ODBC

ODBC

これでODBCの準備は完了です。

次にQlik Senseをインストールします。
Qlik Sense Desktop

インストールが完了したら起動します。

QlikSenseDesktop

起動が完了したら右上の「アプリの新規作成」ボタンを押してください。

QlikSenseDektop

アプリ名は適当に「sample」とでもします。
そしてアプリを起動します。
すると下の画面が起動します。

QlikSenseDektop

では、早速データロードをしてみましょう。
赤枠の部分を押してください。

QlikSenseDektop

次に「接続の新規作成」>「ODBC」を押します。

QlikSenseDesktop

下の画面が開くので、先ほど作ったODBCの接続設定を選択します。
こんな感じです。
※「システムDSN」から「ユーザーDSN」への切り替えをお忘れなく。

QlikSenseDektop

問題なく保存できると画面の右側に接続設定が現れます。
次に接続設定の真ん中のテーブルのようなマークを押します。

QlikSenseDektop

すると下のような画面が現れるので、左上のセレクトボックスからDBを選択します。
そうすると最初に構築したテーブルが出てくるので、両方ともにチェックを入れて「スクリプトを挿入」ボタンを押します。

QlikSenseDektop

こんなスクリプトが吐き出されます。
※「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`;

ここまで出来たら、あとは右上の「データのロード」ボタンを押すとデータロードが完了します。

QlikSenseDesktop

これでデータロードは完了です。
ちなみにSQLを書ける人ならわかると思いますが、このスクリプトの「SQL」以降はselect文です。
また、LOAD以降はQlikSense内で利用する列名を表しています。

ここらへんを工夫すると、Qlik Sense内でのJoinが勝手に行われたりするのですが、ここら辺の詳細は別途説明します。

スポンサーリンク

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です