プロが教えるわが家の防犯対策術!

Access クエリ 重複しない条件抽出の方法

テーブルに商品コード、価格、適用開始日、適用終了日のフィールドがあります。
価格の訂正があると、新価格のレコードを追加します。この時、価格訂正前のレコードは変更しません。
※テーブルレコードのデータ変更は禁止されています。

クエリを作成し、適用開始日、適用終了日は“最後”で集計させ、適用終了日の抽出条件には>Date()を入れています。
が、この状態だと価格改正前と後の商品コードが重複してしまいます。
重複なく、最新の価格を表示しようとする場合、どうしたらいいでしょうか?
詳しい方のご教授をお願い致します。
(OS:Windows7 / Access:2010を使用しております。)

A 回答 (4件)

商品コードが12の場合


価格=dlast("価格","テーブルの名前",“商品コード=12)

全てのレコードを処理したい時は、リレーションを作って
下さい。

回答が欲しいなら、データを示さないと駄目ですよ。
    • good
    • 0

具体的にデータを用意をして貰っての質問の方が回答し易いと思います


が。今の質問では回答がしずらいと思います。

回答者の立場に立った質問をしないといつまでたっても回答をもらえな
いですよ。自分だけが質問を理解しても回答をする方が質問の内容を理
解出来ない様な質問では意味が無いです。

回答は全てが具体的です。その意味では質問も具体的に書いて下さい。
回答者が迷惑です。

回答が有ったとしても頓珍漢な回答に成りがちですよ。

この様な質問の場合は、全ての一切合切をsqlで記載をした方がより良
い回答に成ります。
    • good
    • 0

適用開始日を降順にならべて1行目を取得するとか、適用開始日のMAXを取得し、それを条件にデータを取得するか。


いろいろあります。
    • good
    • 0

>※テーブルレコードのデータ変更は禁止されています。


禁止されている理由は何ですか?

価格改正前のレコードの適用終了日を正しく変更すれば
そのままでいいと思いますが。
    • good
    • 0

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