SQLを用いてデータを加工/統合する手順を知りたい

本記事では

本記事では、b→dash上でSQLを利用する際の基本的な知識や操作について説明します

「b→dash上でSQLを利用する際のルール」や「応用的な操作」「エラーが発生した時の対処方法」については、「SQLの記述ルールについて知りたい」をご参照ください。

SQLとは

SQLとは、データの加工や統合、削除などを実施することができるデータベース操作言語です。
b→dashではSQLを利用せず、管理画面の操作のみでデータの加工や統合、削除などが実施できますが、SQLの操作に慣れている方のために、SQLを活用してデータを加工統合する環境も用意しています

SQLを利用せず管理画面の操作のみでデータの加工や統合を行いたい場合は、
[概要]加工タスク一覧」または「統合テンプレートを利用したい」をご参照ください。

b→dashにおけるSQLの利用方法

b→dash上でSQLを利用する主な用途は、b→dash上にあるデータファイルに対して加工や統合を行うという使い方になります。b→dash上にあるデータファイルを使わずに、SQLで新規にデータファイルを作成することはできませんのでご留意ください。

SQLを利用してデータを作成する

SQL機能の操作方法において、顧客IDをキー項目にして「顧客データ」と「受注データ」を統合する手順を例に説明します。

【「顧客データ」と「受注データ」の統合イメージ】

データパレット」をクリックします

データを確認」をクリックします

右上にある「SQL」をクリックします

SQLのエディター画面が表示されます

SQLエディターに入力可能な文字数は100,000文字までとなっています!
※スペース、タブ、改行、コメントなどもすべてカウントします
SELECT * FROM」を入力します

テーブル名を取得するため、「データファイル一覧」をクリックします

該当する顧客データファイルの「コピーアイコン」をクリックします
(テーブル名がコピーされます)

SQL画面にペーストし、テーブル名を指定します

結合(JOIN)するテーブルを増やすことで、データ容量が大きくなり従量費用が増加します。また、結合が完了するまでに時間を要することがありますのでご留意ください。
INNER JOIN」と入力します

同じ要領で、統合先のデータである「受注データファイル名」を記載します

JOIN文のルールに則ってSQL文を完成させ、最後に「;」を入力します
※カラム名はモーダルに表示される物理名を参照ください

実行確認」をクリックします

適用」をクリックします

エラーが発生した時の対処方法

「クエリの構文チェック」を行った際に、エラーメッセージが表示されSQLが実行されない場合があります。エラーメッセージごとの対処法については以下をご参照ください。

# エラーメッセージ 対処法
1 クエリ末尾にはセミコロンを入力してください クエリ末尾に「;」がついているかをご確認ください。
2 構文エラーが発生しました 記載したクエリの構文に間違いがないかをご確認ください。

「構文エラー」が生じる主な原因として、物理名に「 . 」(ドット)が含まれている場合などが挙げられます。
物理名に「 . 」(ドット)が含まれている場合、カラム名を「" "](ダブルクォーテーション)で囲み、SQL文を記載する必要があります。
3 指定したデータファイルが存在しません 指定したデータファイルが存在するかどうか、また、データファイル名が間違っていないかどうかをご確認ください。
4 指定したカラムが存在しません 指定したカラムが存在するかどうか、また、カラム名が間違っていないかどうかをご確認ください。
5 インプットデータファイルの権限が存在しません クエリを作成しているユーザーが、クエリ上で指定したデータファイルに対して閲覧権限以上の権限を有しているかどうかをご確認ください。
6 他データファイルで設定済みのテーブル名のため保存できません 作成したデータのファイル名が、既に作成されていないかどうかをご確認ください。

統合されたデータが表示されます

保存」をクリックします

実行タイミング」を選択し、「適用」をクリックします

名前」を入力し、「保存」をクリックします

SQLの実行結果に基づき作成されたデータファイルが作成されます

以上で、SQLを使ったデータ統合は完了です!

[参考]「カスタム物理名」の利用方法

b→dashのSQL画面にて設定することができる「カスタム物理名」とは、データファイルにデフォルトで設定されている「デフォルト物理名」とは異なり、カラムに対して任意で設定できる物理名です。以下では、「カスタム物理名」の設定方法、利用方法について説明します。

❶ 「カスタム物理名」を設定する

データファイル一覧」をクリックします
物理名を変更」をクリックします
任意の「テーブル物理名」を入力します
「テーブル物理名」に使用可能な文字は半角英数字」、「$」(ドルマーク)、「 _ 」(アンダースコア)の3種類となっています。
任意の「カスタム物理名」を入力し、「適用」をクリックします
テーブル物理名と同様に、「カスタム物理名」に使用可能な文字は半角英数字」、「$」(ドルマーク)、「 _ 」(アンダースコア)の3種類となっています。
「カスタム物理名」が設定されました

❷ 「カスタム物理名」を用いて加工を行う

「カスタム物理名」を利用して、加工を行う手順を説明します。

加工したいカラムを選択します

カラム名をクリックすることで、設定した「カスタム物理名」がSQL文にペーストされます。
SQL文を完成させ、「実行確認」をクリックします
適用」をクリックします
加工結果を確認し、「次へ」をクリックします
個人情報」に値するカラムを選択します
更新設定の有無について「更新設定をする」「更新設定をしない」の2つから選択します
データファイルに名前を付けて保存します
加工したデータファイルが追加されました
後続のデータファイルへの「カスタム物理名」の「引き継ぎ条件」について

「カスタム物理名」は、特定の条件に合致する場合、後続のデータファイルの「カスタム物理名」に引き継がれます。後続のデータファイルに「カスタム物理名」が引き継がれることで、SQLを用いて加工/統合する際に、「カスタム物理名」の再設定が不要となります。
後続のデータファイルに引き継がれる「カスタム物理名」の条件については、下記をご参照ください。

引き継ぎ条件について

下記の2つの条件に一致する「カスタム物理名」が、後続のデータファイルに引き継がれます。

# 条件
1 「カスタム物理名」が「 C_ 」で始まっている
2 「カスタム物理名」が「半角英数字」「$」(ドルマーク)「_ 」(アンダースコア)のみで、記載されている
[参考] 引き継ぎ対象の物理名について

引き継ぎ対象となる物理名は、SQL文にAS句が記載されているかどうかによって異なります。引き継ぎ対象となる物理名については、下記の表をご参照ください。

# AS句の有無 引き継ぎ対象となる物理名
1 AS句あり AS句で指定した物理名が引き継ぎ対象の物理名となります。そのため、AS句で指定した物理名が「引き継ぎ条件」に合致する場合、後続のデータファイルとして引き継がれます。

例えば下記の場合において、「C_CUSTOMER_ID」「C_MAIL_ADDRESS」が引き継ぐ対象の物理名となります。
例)
 select C_ID as "C_CUSTOMER_ID",
 C_MAIL_ADDRESS ,
 from T_CUSTOMER_TABLE;
2 AS句なし select文で指定した物理名が引き継ぎ対象の物理名となります。そのため、select文で指定した物理名が「引き継ぎ条件」に合致する場合、後続のデータファイルに「カスタム物理名」として引き継がれます。

例えば下記の場合において、「C_CUSTOMER_ID」「C_MAIL_ADDRESS」が引き継ぐ対象の物理名となります。
例)
 select C_CUSTOMER_ID ,
 C_MAIL_ADDRESS ,
 from T_CUSTOMER_TABLE;