- 締切済み
accessのテーブル二つで一つのテーブルを
ACCESS97を使用しています。 テーブル1 製品番号 出荷日 出荷数 100 2012/12/1 3 101 2012/12/13 2 105 2012/12/1 5 108 2012/12/5 6 テーブル2 製品番号 売上日 売上数 売上金額 100 2012/12/1 3 3,000 101 2012/12/13 4 5,000 111 2012/12/10 10 500 二つのテーブルがあり、どちらもfrom to の期間指定で大きなテーブルから取り出しています。テーブル1のみにあるデータ、テーブル2にあるデータどちらにもあります。 これを一つのテーブルにまとめて下記のようにしたいのですが、できますか。 製品番号 出荷日 出荷数 売上日 売上数 売上金額 100 2012/12/1 3 2012/12/1 3 3,000 101 2012/12/13 2 2012/12/13 4 5,000 105 2012/12/1 5 null null null 108 2012/12/5 6 null null null 111 null null 2012/12/10 10 500 このようなテーブルにしたいのですが、できますか。 access使用歴は長いのですが、簡単なクエリとかしかできなくてなさけなく思っています。これを機に少し勉強したいと思ってますが、取り掛かりからわかりません。よろしくお願いいたします。
- みんなの回答 (1)
- 専門家の回答
みんなの回答
- yosifuji20
- ベストアンサー率43% (2675/6115)
一つのクエリーでは難しそうですが、2回に分ければ可能です。 考え方だけですが、 (1)テーブル1をメインにしてテーブル2を製品番号をキーにして連結するクエリー、ここでテーブル2に該当データが無い項目はnullにして出力 (2)テーブル2をメインにしてテーブル1を製品番号をキーにして連結するクエリー、ここでテーブル1に該当データが無い項目はnullにして出力 この二つのクエリーから別々に例えばテーブルXに答えを出力すれば、出力側テーブルXではお望みの結果が出来上がります。 キーとなる製品番号がテーブル1にないと(1)のクエリーでは自分がブランクのデータは出てこないですね。 (2)のクエリーも同様です。 したがってお互いに自分がある場合のクエリーを使って相手のブランクはNULLで出力すればできると言うことです。 (最近使っていないので記憶間違いがあったらご容赦ください)