Access実践入門 TOPへ
 ■ マイクロソフトアクセス、差分クエリーを使う
差分クエリーとは?

差分クエリーは、2つのデータをある共通するフィールドを基に、どちらか一方に有って、もう一方には無いレコードを抽出するものです。

次のような2つのテーブルがあります。

テーブル「tatesta」と、テーブル「tatestb」を比べると、bのテーブルには004番がありません。


004番を探し出す、差分クエリーの作り方です。

2つのテーブルを貼り付けて、番号から番号へのドラッグアンドドロップで、結合線を作ります。
結合線をクリックして選択して、右クックで結合のプロパティを表示します
下のようなウインドが表示されます。


レコードが少ない方のテーブルに向かって矢印がつく様に、設定してください。
そして、レコードが少ない方の番号の抽出条件を "Is Null" と設定します

結果が下のようになります


難しい理屈抜きで、こうする物だと覚えてください。

この差分クエリーは、何千レコードもあるデータから、片方に漏れのあるレコードを探す時等に非常に役に立ちます。もしこのクエリーを使わないで探そうとしたら、大変です。
とても役に立つ、クエリーです。

サンプルプログラムの中での使用

サンプルプログラムでは、コンペの成績登録の画面で、コンペの参加者を登録者の中から追加していく画面で、登録者全員を一度に追加する時点で使っています
すでに、何人か追加した後で、この処理を実行した時にすでに追加済みの人を追加しようとしたら、エラーが出るのを避けるためです。



「ta参加者」は登録済みの人達で、「qu大会全員追加選択」は今回のコンペに参加する人達です。
差分クエリーを利用した、追加クエリーになっています。