訪問して頂きありがとうございます。まさふくろーです。
この記事では、2つのテーブルで一致しないデータを抽出する方法をご紹介します。
2つのテーブルで一致しないデータを抽出する
「受注」「受注明細」テーブルから「受注明細」テーブルにない受注データを抽出する。(受注コード:1001、1004は、「受注明細」テーブルに存在しない。)
クエリウィザードでの抽出手順
①「作成」タブをクリック⇒②<クエリ>グループの「クエリウィザード」をクリックします。
①リストから「不一致クエリウィザード」を選択⇒②「OK」ボタンをクリックします。
①リストから「受注」を選択⇒②「次へ」ボタンをクリックします。
①リストから「受注明細」を選択⇒②「次へ」ボタンをクリックします。
①②「受注」テーブルと「受注明細」テーブルで関連付けるフィールド「受注コード」を選択⇒③「⇔」ボタンをクリック⇒④「次へ」ボタンをクリックします。
クエリの結果に表示するフィールドを選択します。
「>」ボタンをクリックすると、1つずつフィールドを選択、「>>」ボタンをクリックすると、すべてのフィールドをまとめて選択できます。
「次へ」ボタンをクリックします。
①「クエリ名」を入力⇒②「クエリを実行して結果を表示する」を選択⇒③「完了」ボタンをクリックします。
クエリデザインでの抽出手順
テーブルの追加
①「作成」タブをクリック⇒②<クエリ>グループの「クエリデザイン」をクリックします。
①「テーブル」タブをクリック⇒②「受注」「受注明細」を選択⇒③「追加」ボタンをクリック⇒④「閉じる」ボタンをクリックします。
「受注」「受注明細」など複数のテーブルを選択するには、「Ctrl」キーを押しながら、左クリックします。
「受注」「受注明細」テーブルの関連付け
「受注」テーブルの「受注コード」を選択します。
左クリックした状態で、マウスポインターを「受注明細」テーブルの「受注コード」に近づけ、ドロップします。
すると、「受注」テーブルと「受注明細」テーブルの間に、「」マークが表示されます。
解説 | 「受注」テーブルと「受注明細」テーブルが「受注コード」で関連付けられたことを意味します。 |
両方のテーブルに存在するデータのみが抽出されます。 |
「」マークをダブルクリックします。
①「2:受注の全レコードと受注明細の同じ結合フィールドのレコードだけを含める。」を選択⇒②「OK」ボタンをクリックします。
解説 | 「受注」テーブルと「受注明細」テーブルが「受注コード」で関連付けられたことを意味します。 |
「受注」テーブルの全件を抽出します。(「受注明細」テーブルに存在しないデータも抽出します。) |
クエリ結果に表示するフィールドを選択
「*」を選択⇒左クリックした状態で、「デザイングリッド」上にポインターを移動し、ドロップします。
すると、「デザイングリッド」上に、「受注.*」と表示されます。
解説 | 「*」マークは、すべてという意味で「受注.*」とは、受注テーブルの全フィールドの意味になります。 |
抽出条件を付けるフィールドを選択
「受注明細」テーブルの「受注コード」を選択⇒左クリックした状態で、「デザイングリッド」上にポインターを移動、ドロップし、「受注コード」を追加します。
抽出条件を追加
「受注コード」フィールドの「抽出条件」行に「Is Null」と入力します。
解説 |
抽出条件に「Is Null」と指定すると、受注明細テーブルの受注コードがNullのデータを抽出するという意味になります。
|
選択クエリの実行
①「デザイン」タブをクリック⇒②<結果>グループの「実行」をクリックします。
最後まで読んでいただき、ありがとうございました!