SQLを学習するために意気込む程の気持ちはなくても大丈夫です。
ACCESSなら「クエリデザインでデザインビューとSQLビューを切り替えて確認できる」くらいに思っておけば大丈夫です。
違いは、デザインビューは画面操作で簡単にSQLが作れるけれど複雑SQLは作れない(ユニオンクエリもこれに該当)といった程度です。
インターネット上でやり取りをする場合はテキストベースがほとんどですので、SQLを文字列で扱えるとなれば大きなアドバンテージになります。
(扱えると言うのはコピー&ペーストができるというレベルで大丈夫です)
それではもっと基本的なところからもう少し具体的な手順を
1.選択クエリで出庫明細、入庫明細を作る
元の元になるデータとして
出庫明細
製品ID | 出庫日 | 出庫数量 |
---|---|---|
と
入庫明細
製品ID | 入庫日 | 入庫数量 |
---|---|---|
といったデータが必要になります。選択クエリで問題なく作れますか?
今後のやり取りを楽にするために、それぞれ出来上がったものはQ出庫明細とQ入庫明細(クエリは頭文字にQをつける)としておきましょう
2.ユニオンクエリでデータを縦につなげる(前段階)
それぞれ出来上がったQ出庫明細とQ入庫明細を使いやすいように手を入れます。
Q出庫明細
製品ID | 出庫日 | 出庫数量 |
---|---|---|
↓
製品ID | 入出庫日 | 入出庫数 | 入出庫フラグ |
---|---|---|---|
(すべて"出庫") |
Q入庫明細
製品ID | 入庫日 | 入庫数量 |
---|---|---|
↓
製品ID | 入出庫日 | 入出庫数 | 入出庫フラグ |
---|---|---|---|
(すべて"入庫") |
クエリビューではユニオンクエリが作れないので作業を簡単にするためにQ出庫明細とQ入庫明細を同じ列数、同じ列名に揃えておきます。
さらに、合体させた後に入庫なのか出庫なのかわかるように[入出庫フラグ]フィールドを追加しておきます(このフィールドのデータはすべて「出庫」または「入庫」で固定)
3.ユニオンクエリで入出庫明細をつくる
Q入出庫明細
製品ID | 入出庫日 | 入出庫数 | 入出庫フラグ |
---|---|---|---|
("入庫"または"出庫") |
事前準備をしてあるので、最も基本的なユニオンクエリの使い方でつくれます
4.集計クエリで入出庫数を横に並べる
Q入出庫集計_sub
製品ID | 入出庫日 | 入庫 | 出庫 |
---|---|---|---|
これも集計クエリとしては基本的な使い方をやることになります。
まだ月ごとの集計になっていないのでQ入出庫集計_subとしておきます。
とりあえずここまで
どこまでできますか?
躓いたら出来上がったところまでのクエリをSQLビューで表示してこの掲示板にコピペしつつ質問しましょう
(SQLビューを開けばSQL文がすべて反転表示されているはずなのでそのまま右クリックからコピーするだけです)