関連トピック
×
クエリを使ってデータを管理する
メイン コンテンツへスキップ
サポート
Microsoft アカウントでサインイン
サインインまたはアカウントを作成してください。
こんにちは、
別のアカウントを選択してください。
複数のアカウントがあります
サインインに使用するアカウントを選択してください。
クエリを使ってデータを管理する

外部結合でクエリを作成する

お使いのブラウザーではビデオがサポートされていません。

演習

クエリでは、1 つのテーブルからはすべてのレコードを表示し、別のテーブルからは一致するレコードを表示したいという場合があります。 これを行うには、外部結合を作成します。

内部結合では、結合された両方のデータ ソース内に一致する ID が存在する場合にのみデータを表示します。 たとえば、製品と販売量を表示する場合は、"製品" テーブルと "受注明細" テーブルとの間に内部結合を作成します。 クエリを実行すると、注文が発生した製品のみ (すなわち、両方のテーブルに表示される製品) が返されます。

これに対し、外部結合では、1 つのデータ ソースからすべてのデータを返し、別のテーブルまたはデータ ソースから一部のデータを返します。

たとえば、まだ売れていない製品を表示するには、"製品" テーブルからは製品 ID を、"受注明細" テーブルからは一致する注文 IDを返すクエリを作成します。 "受注明細" テーブル内に一致するレコードがない製品は、"注文 ID" フィールドに値が含まれていない製品名を返します。

左外部結合と右外部結合

外部結合で、含まれているすべてのレコードを表示するテーブルは、ベース テーブルと呼ばれています。 一部のレコード (一致したレコード) のみを表示するテーブルは、セカンダリ テーブルと呼ばれています。

[結合プロパティ] ダイアログ ボックスには、各種の結合で表示される内容が記述されます。

3 つのテーブルと各テーブルの結合プロパティを示すスクリーンショット

顧客が購入した製品を表示するクエリを作成したと仮定します。 出力フィールドは、"製品名" フィールド、"注文 ID" フィールド、"数量" フィールドです。

  1. 内部結合。 両方のテーブルの結合フィールドが等しい行 (レコード) のみを含める (たとえば、注文が関連付けられている製品のみ)。

  2. 左外部結合。 [テーブル名] の下のテーブルのすべてのレコードと、結合されたフィールドが等しいテーブルのレコードのみを含める (たとえば、すべての注文が含まれますが、関連付けられている製品が含まれる注文の数量と製品の商品コードのみ)。

  3. 右外部結合。 それらの製品に対する注文がない場合でも、"注文 ID" フィールドと "数量" フィールドには空白値が表示される)。

これらの例から分かっている通り、左側のテーブルと右側のテーブルを知る必要があります。これは、実際にはクエリ ウィンドウでのテーブルの配置方法とは異なる可能性があります。 クエリから取得するデータを理解するには、[結合プロパティ] ダイアログ ボックスのテキストをよく読んでください。

1. データ ソースを追加する

  • [作成]、[クエリ デザイン] の順に選択します。

必要なすべてのテーブルとクエリをデータ ソースとして追加します。 (心配はいりません。 データ ソースを忘れた場合でも、後でデータ ソースを追加できます)。

データ ソースが検出または推測されると、Access によって、データ ソースのリレーションシップが表示される場合があります。

2. 結合を追加する

  • ソース間のリレーションシップが表示されない場合は、結合を追加します。 一方のデータ ソース内にある目的のフィールドを、別のデータ ソース内の対応するフィールドまでドラッグします。 フィールドのドラッグ元のテーブルは、[結合プロパティ] ダイアログ ボックスで左側に表示されます。 既定では、Access は内部結合を作成します。 外部結合が必要な場合は、結合の種類を変更します。

    2 つのテーブル間の結合のスクリーンショット

3. 結合を変更する

  1. 変更対象の結合を表す線をダブルクリックします。

  2. [結合プロパティ] ダイアログ ボックスで、外部結合を作成するために、2 番目または 3 番目のオプションを選択します。 [OK] を選択します。

    どのテーブルがベース テーブルであるかご注意ください。そのテーブルからはすべてのレコードが表示されます。

    左のテーブルの名前が強調表示された結合プロパティのスクリーンショット

4. クエリを実行する

クエリを作成するための一般的な手順に従い、出力フィールドを追加し、抽出条件を追加し、クエリを実行または保存します。 詳細については、「基本的なクエリの作成」をご覧ください。

さらに詳しく

基本的なクエリの作成

Excel のトレーニング

Outlook のトレーニング

ヘルプを表示

その他のオプションが必要ですか?

サブスクリプションの特典の参照、トレーニング コースの閲覧、デバイスのセキュリティ保護方法などについて説明します。

コミュニティは、質問をしたり質問の答えを得たり、フィードバックを提供したり、豊富な知識を持つ専門家の意見を聞いたりするのに役立ちます。

この情報は役に立ちましたか?

言語の品質にどの程度満足していますか?
どのような要因がお客様の操作性に影響しましたか?
[送信] を押すと、Microsoft の製品とサービスの改善にフィードバックが使用されます。 IT 管理者はこのデータを収集できます。 プライバシーに関する声明。

フィードバックをいただき、ありがとうございます。

×