別の下記記事でデータマッチングについて簡単に纏めましたが、
http://superdbtool.blog.jp/archives/3552445.html
実際のデータマッチングは様々な条件があって、そしてマッチングのソート順も
指定する必要な場合があります。
もっと自由にデータをマッチングするにはやはりSQLは一番柔軟です。
ExcelDevToolで使っているSQL文法はSqliteと同じです。
以下は例で説明します。
データ1(Aシート):
データ2(Bシート):
やりたいこと:AシートのデータとBシートのデータを名前でマッチングして、データ2に存在しない
名前なら、「存在しない」と表示する
http://www.vector.co.jp/soft/winnt/business/se475869.html
上記のソフトをダウンロードして、Excelを閉じてからインストールします。終わりましたら、Excel起動して、データの入っているファイルを開きます。(インストールガイド)
①、Excelシート上にて右クリックして、機能拡張⇒テーブル⇒「データマッチング・突合・照合・SQL」をクリックします。
②、データ1にAシートのデータをタイトルを含めて選択します。
③、データ2にBシートのデータをタイトルを含めて選択します。
④、ステップ3でデータ1とデータ2の条件に「名前」を選択して、「SQL実行」をクリックします。
⑤、デフォルトで以下のSQLが生成されます。このSQLでは一般的なマッチングには十分です。
⑥、今回の例では「存在しない」の表示も要りますので、SQLを少し修正します。
http://superdbtool.blog.jp/archives/3552445.html
実際のデータマッチングは様々な条件があって、そしてマッチングのソート順も
指定する必要な場合があります。
もっと自由にデータをマッチングするにはやはりSQLは一番柔軟です。
ExcelDevToolで使っているSQL文法はSqliteと同じです。
以下は例で説明します。
データ1(Aシート):
名前 | 年齢 | 臭味 | 婚姻 | 年収 |
---|---|---|---|---|
たろう | 58歳 | 趣味カメラ | 既婚 | 年収800万… |
まちこ | 27歳 | 趣味陶芸 | 未婚 | 年収300万… |
はなこ | 32歳 | 趣味ボーリング | 既婚 | 専業主婦… |
よさく | 83歳 | 趣味山歩き | 既婚 | 年金生活 |
データ2(Bシート):
名前 | 出発 | 帰宅 | 行き先 | 備考 |
---|---|---|---|---|
はなこ | 1月1日出発 | 1月7日帰宅 | 行き先京都 | おみやげ八つ橋… |
たろう | 3月4日出発 | 3月16日帰宅 | 行き先北海道 | おみやげ昆布… |
まちこ | 12月25日出発 | 12月30日帰宅 | 行き先沖縄 | おみやげシーサー… |
やりたいこと:AシートのデータとBシートのデータを名前でマッチングして、データ2に存在しない
名前なら、「存在しない」と表示する
http://www.vector.co.jp/soft/winnt/business/se475869.html
上記のソフトをダウンロードして、Excelを閉じてからインストールします。終わりましたら、Excel起動して、データの入っているファイルを開きます。(インストールガイド)
①、Excelシート上にて右クリックして、機能拡張⇒テーブル⇒「データマッチング・突合・照合・SQL」をクリックします。
②、データ1にAシートのデータをタイトルを含めて選択します。
③、データ2にBシートのデータをタイトルを含めて選択します。
④、ステップ3でデータ1とデータ2の条件に「名前」を選択して、「SQL実行」をクリックします。
⑤、デフォルトで以下のSQLが生成されます。このSQLでは一般的なマッチングには十分です。
⑥、今回の例では「存在しない」の表示も要りますので、SQLを少し修正します。
SELECT
T1.名前 AS T1_名前,
T1.年齢 AS T1_年齢,
T1.臭味 AS T1_臭味,
T1.婚姻 AS T1_婚姻,
T1.年収 AS T1_年収,
T2.名前 AS T2_名前,
T2.出発 AS T2_出発,
T2.帰宅 AS T2_帰宅,
T2.行き先 AS T2_行き先,
T2.備考 AS T2_備考,
(CASE
WHEN T2.名前='' OR T2.名前 IS NULL THEN '存在しない'
END) 結果
FROM T1 LEFT OUTER JOIN T2 ON
コメント