こんにちは。事業推進チームです。
データベース検索・更新ツールSkyLinkをデータのクレンジングツールとして活用する方法を以前ご紹介しましたが、( Power BIで使うデータをSkyLinkで整形する )その第二弾となります。
データ整形の方法の一つとして検索結果の統合を行ってみます。複数のOR条件を付加することで同様の抽出は可能ですが、今回はUNION機能を用いる方法とCSV出力を用いる方法の2つをご紹介します。
前提
元データとして食品会社の売り上げデータをイメージしたサンプルCSVを用意しました。受注や商品、店舗、社員などのデータが含まれています。 顧客のデータが営業部別に分かれているので、これをまとめた顧客一覧のデータを抽出してみます。
UNION機能
SkyLinkを起動しサンプルデータを読み込みます。CSVを読み込むためのODBC設定は前回記事をご覧ください。
まずは、第一営業部の顧客データを抽出するコマンドを作成します。
同様に、第二営業部の顧客データを抽出するコマンドを作成します。その後、新規コマンドを新規作成しコマンドリストから2つのコマンドを読み込みメニューの「ユニオン」をクリックします。
ユニオンのオプションダイアログが開くので、重複データを出力しない場合は「UNION」のまま、重複データも出力する場合は「UNION ALL」とします。 並び順の指定を行うのであれば、ORDER BYに項目名を入力しOKをクリックします。
通常のコマンド検索と同じように検索をクリックすると、統合された結果が表示されます。
注意点として、最初に作成する2つのコマンドでは取得する列の数、データ型、順番が同じになっている必要があります。
CSVの結合
営業部ごとの抽出コマンドはUNIONの時に作成したものを流用します。 一つ目のコマンドを開きます。
出力先詳細設定ダイアログを開き、出力先をファイル、オプションの「先頭に列名を出力する」にチェックを入れ、ファイルの種類をCSV(カンマ区切り)にします。 ファイル名は任意ですが、ここでは顧客リストとしました。
同様に2つ目のコマンドの設定を行いますが、ダイアログの設定でオプションの「先頭に列名を出力する」のチェックを外し、「ファイルの最後に追加する」にチェックを入れます。ファイル名は上と同じ顧客リストとします。
出力されたCSVを開くと、UNIONで統合した結果と同じ一覧のデータが抽出されています。
こちらの注意点としては、UNIONと違い重複データもそのままCSVに出力されるので、データの確認の必要があります。
最後に
複数のテーブルの検索結果をまとめる方法をご紹介しました。
今回は検索する際に条件は付けませんでしたが、コマンドの作成時に条件付けを行うことで、異なる条件に基づいてデータをフィルタリングし、特定の基準を満たすデータのみを抽出するといったことも可能です。
SkyLink plusについての疑問点やご質問等ございましたらお気軽にお問い合わせください。体験版のご用意もございます。
また弊社では、データ活用つながりでMicrosoft PowerBIの導入支援も行っております。下記リンク先にてサービスのご紹介を行っております。ぜひご覧ください。