クエリについて解説します。
聞きなれない方は難しい言葉に聞こえるかもしれませんが、基本的な考え方さえ理解してしまえばたいしたことはありません。
若干、テクニック的なところもあり、実例図や実践的なテクニック事例もご紹介しますので、考え方の参考になれば。
関連の過去記事も示しておきます。
クエリ
クエリとは?
DBに対する問い合わせ(命令)のこと。
例えばテーブルが実体を持つ器であるのに対し、検索クエリはテーブル同士を連結させて必要な項目を抽出した実体を持たない集合項目です。
あくまでテーブルからデータを抽出したり集計関数を利用しているだけで、クエリ自体がデータを保持しているわけではありません。
また更新クエリではテーブルに一括で更新を行うといったことも可能です。
クエリで連結とは?
DB製品の利点は何といっても複数のテーブルを同一のKey項目で結び必要な情報を取り出すことが容易に出来ることです。
例えば商品マスタ(ASIN,商品名,価格)と在庫テーブル(ASIN,数量)があれば、Key=ASINで結べば、ASIN、商品名、価格、数量をいちどに抽出することが可能です。
並び替えも自由自在、どちらか一方のテーブル(マスタ)に存在するもののみを抽出といった操作もDB製品の得意とするところです。
マッチングとは?
異なる対象をKEYで突合することをマッチングといいます。
例えばAとBの2つのテーブルがあるとき、AとBをKey項目で突き合わせると3パターンの分岐が考えられます。
・AとBに存在するケース
・Aのみ存在するケース
・Bのみ存在するケース
それぞれの可能性に対して何をしたいのか、或いは何もしないのかを考慮する必要がありますが、どちらか一方を軸に考えるのがよくあるパターンです。(外部結合)
例としてAを軸に考えるとアウトプットは、
・両方存在する場合は、AにBから必要な項目を引っ張ってくる
・Aのみ存在する場合は、Aの項目を全て出力するのみ
・Bのみ存在する場合は何も出力しない
と考えます、イメージ出来ますか?
3つ以上の突合においても、ひとつを軸とすることで考えやすくなります。
【例:連結線を右クリックより結合プロパティ選択】
ここさえ理解できれば、あとはインプットデータ同士を結合させ、出力したいアウトプットに加工するだけです。
更新クエリとは?
普通のクエリがテーブル同士を結合して結果を抽出するのに対し、更新クエリはテーブルそのものに変更を加えます。
【例:商品名を置換テーブルの値に置き換える】

除外クエリとは?
テクニック的な話ですが、例えばテーブルに不要なデータが存在した場合、データを不用意に削除しがちですが、それが追加レコードの多いテーブルですと、せっかく削除したデータをあとでまた追加してしまう可能性があります。
ですので、データを削除するのではなく、不要テーブルを作成して不連携すれば、より管理が容易になります。
【例:外部結合してkeyが結びつかないように設定する】

最後に
VBAを使わなくてもSQL言語を使わなくても、ここまでノンコーディングでいけるということは、ご紹介したとおりです。
さらに慣れていけば、これまで既存のツールに依存しすぎて気付かなかったことにも気付く筈です。
例えば、各種リサーチツールの出力結果をインプットとしてテーブルリンクし、それらの分析クエリを一度作成さえすれば、いつでも最新のリサーチ結果を表示させることが可能になります。
またAuctownやストアクリエイタなどCSVアップロード可能なツール向けに、クエリでデータ加工して出力すると手作業で移行作業を行うよりも格段に楽になります。
ツールや各モールのプラットフォームから出力されるCSVデータは、まさしく垂涎の的で何でも連結したくなりますよ!!
発展編には続かないかも。。。
コメントを残す