質問: Windows98Access2000です。 下記のようなテーブルを元にしたクエリがあります。 主索引(主キー)|手配番号 |行番号|更新回数|発行日 |販売先|・・・ 0101023456 |0101023456| 56| 1|19990301|A001 |・・・ 0101034567 |0101034567| 67| 3|20000503|A235 |・・・ ・ ・ ・ ・ ・ ・ 仮に既存データをA、更新データ(TXT)をBとします。 (更新データは毎朝TXTで決まったフォルダーに落ちてきます。) 同じ項目の更新データBを、下記の条件で最終的に既存データAに新規追加、 上書したいのです。 1.更新データBの主索引は主キーにはなっておらず番号がダブっています。 ただレコードごとに「更新回数」項目に1や2といった番号が入ってますので 、その中から同じ主索引番号がある場合更新回数の一番大きな番号だけを抽出 したい。 2.1で抽出した更新データBを今度は、既存データA(主索引は主キー)に追加す るのですが、上記と同じくすでに重複する主索引番号が存在する場合A、Bデー タの「更新回数」項目を見て一番大きい番号を反映(上書)させたい。 2の既存データに追加だけは追加クエリを作り重複しないデータは追加することが 出来るのですが、重複しているデータは「XX件の重複データが・・・」とでて 追加することが出来ません。(あたりまえですかf^^;) ちょっとわけのわからない説明になってしまいましたのでやりたいことを簡単に いいますと、更新データから既存データへ主索引がダブることなく毎朝送られて くる最新データをテーブルに取り込みたいということなのです。 ちょっと思ったのですが、もしかして私は抽出条件式が分かってないだけなので しょうかf^^; おかしな質問で申し訳ありませんが、ご指導の程よろしくお願い致します。
回答: まず考え方ですが 1つのファイルをクエリー等で選択してどのこうのとやる場合 クエリーを続けると上手く動作をしないことが多々あります。 それの解決策ですが、クエリー結果をファイルに出力し それを元に処理をする方法がゆうこうです。 さて1)の方法ですが 主キーと更新回数だけのクエリーで 主キーをグループ化し 更新回数を集計、最大、昇順でファイルを作成してから 実行された方が良いと思います。 がんばって下さい。