アプリ版:「スタンプのみでお礼する」機能のリリースについて

アクセスで、複数のテーブルを1つにしたいです。

テーブルAは、基本の対象(nameのa,b,c)のテーブルです。
テーブルBは、テーブルAの基本の対象の全てが入っているわけではないです。(nameのbなしです。)
テーブルCは、テーブルAの基本の対象以外のものが入っていたり(dというname)、基本の対象が複数入っていたり(aが2個)します。

これを、テーブルDのようなテーブルにしたいです。

具体的には、
① テーブルBにはnameのbはないので、「null」等、データがなかったことがわかるようなものを表示させたいです。
② テーブルCにnameのaが2つありますが、どちらか1つだけがテーブルDに入ればよいです。両方入ってもいいです。
③ テーブルCにnameのdがありますが、これは、テーブルAにないので、テーブルDには入れないようにしたいです。

テーブルAの行が70あって、テーブルBやCに相当する表が15あります。
アクセスでなんとかならないか、丸1日がんばったのですが、
うまくいきません。

どうぞよろしくお願いします。

「アクセスで、複数のテーブルを1つにしたい」の質問画像

質問者からの補足コメント

  • 1、テーブルA,テーブルB,テーブルCをアクセスにインポート
    2、クエリデザイン で、加工していく

    のようにすると思っているのですが、
    手順も含めて教えてほしいです。

    よろしくお願いいたします。

    No.1の回答に寄せられた補足コメントです。 補足日時:2020/12/27 10:08

A 回答 (1件)

SELECT A.ID, A.name, B.name, B.data1, C.name, C.data1


FROM (テーブルA A
LEFT JOIN テーブルB B ON A.name = B.name)
LEFT JOIN (SELECT name, Min(テーブルC.data1) data1
FROM テーブルC GROUP BY name) C ON A.name = C.name;

これで、テーブルD のもととなるクエリができます。
これをもとにテーブルD に書き込むクエリを作ればよろしいかと。
この回答への補足あり
    • good
    • 0
この回答へのお礼

ありがとうございます。

お礼日時:2020/12/27 10:08

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!