- 締切済み
Accessでの不一致クエリについて
同じデザインの2個のテーブルに データが(順不同に)入っています。 この2個のテーブルの整合性を確かめたいのですが、 不一致クエリだと一箇所のフィールドしか比べることができません。 全てのフィールドの整合性を一度に確かめたいです。 何かいいほうほうはありますでしょうか? よろしくお願いします。
- みんなの回答 (2)
- 専門家の回答
みんなの回答
- imogasi
- ベストアンサー率27% (4737/17069)
Aテーブルをキーでソート。Bテーブルもキーでソート。 (キーはユニークなものであること。) AファイルとBファイルをキーで「マッチング」ロジックでマッチングし、A,Bファイルの等しいキーのレコード を捉えたところで、各フィールドを比較する。1フィールドでも不一致が見つかれば、不一致リストを印刷するとかを行う。 昔のオフラインバッチ処理の常套手段でした。 VBAでDAOで極く簡単に10行程度で出来ると思います。(フィールド比較のステップはフィールド数によるので除いて考えて)。プログラムを組まれてはどうですか。
- maruru01
- ベストアンサー率51% (1179/2272)
こんにちは。maruru01です。 内容が異なる個所を全部確認して把握したいのでしょうか。 それとも、どちらかのテーブルのデータに統一したいのでしょうか。 統一したいのであれば、 ・主キーフィールド(ユニークなフィールド)で、両方のテーブルに存在するデータを統一したい方(例えばAテーブル)のデータで抽出する。 ・そこにもう一方(例えばBテーブル)からデータを追加する。 ・主キー違反のデータは追加されないから、自動的にBにしかないデータのみ追加される。 という感じでしょうか。 1つ1つ確認するなら、両方にある分のデータをエクセルにそれぞれエクスポートして値比較するとか、ファイル比較とかの機能がある適当なテキストエディタソフトを使用するなどでしょう。 あとは、レコードセットを作成してループで順に比較していくかでしょう。
お礼
解答ありがとうございます。 内容が異なる個所を全部確認して把握したいです。 Excelでの照合は行ってみたのですが、 データの欠損があるとうまく照合できないですね。 結構並び替えが出てきます。