質問: 商品テーブル | 店舗コード | 消費期限 | 商品名 | | --- | --- | --- | | 0001 | 2020/7/1 | A | | 0001 | 2020/7/2 | B | | 0001 | 2020/7/3 | C | | 0001 | 2020/7/4 | D | | 0002 | 2020/7/1 | A | | 0002 | 2020/7/2 | B | | 0002 | 2020/7/3 | C | | 0002 | 2020/7/4 | D | 廃棄テーブル | 店舗コード | 廃棄日 | | --- | --- | | 0001 | 2020/7/2 | | 0002 | 2020/7/3 | 上記2つのテーブルで、店舗コード毎に、廃棄テーブルの廃棄日以降のレコードを商品テーブルから抽出したいです。 以下のような結果を期待しています 結果クエリ | 店舗コード | 消費期限 | 商品名 | | --- | --- | --- | | 0001 | 2020/7/2 | B | | 0001 | 2020/7/3 | C | | 0001 | 2020/7/4 | D | | 0002 | 2020/7/3 | C | | 0002 | 2020/7/4 | D | OfficeのAccess2016を使用していますが、上記のような結果を出力するにはどうすればよいでしょうか?
回答: Accessのクエリで再現すればいいんですかね? 廃棄テーブルの店舗コードは一意かどうかで結構違うと思います。 あと編集可能にする必要があるかどうかも大事な情報なので質問に書いたほうがいいかと。 ``` SELECT DISTINCTROW t店舗商品.* FROM t店舗商品 INNER JOIN t店舗商品廃棄 ON t店舗商品.店舗コード = t店舗商品廃棄.店舗コード WHERE (((t店舗商品.消費期限)>=t店舗商品廃棄]![廃棄日])); ``` 書いてある情報だけでSQL書くとこんな感じでいいと思います。 商品テーブル→t店舗商品 廃棄テーブル→t店舗商品廃棄 で読み替えてください。 クエリデザインでみるとこんな感じ。 クエリのプロパティの「固有のレコード」の値で編集できるできないが変わる。 ![イメージ説明