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

FROM 句の中で使用すると、ソース テーブルのレコードを結合します。

構文

FROM table1 [ LEFT | RIGHT ] JOIN table2
ON table1.field1compopr table2.field2

LEFT JOIN 操作と RIGHT JOIN 操作には、次の指定項目があります。

引数

説明

table1table2

結合するレコードのあるテーブルの名前。

field1field2

結合されるフィールドの名前。 フィールドは同じ データ型 で、同じ種類のデータが含まれている必要がありますが、同じ名前を持つ必要はありません。

compopr

"="、"<"、">"、"<="、">="、"<>" などのリレーショナル比較演算子。


解説

左外部結合を作成するには、LEFT JOIN 操作を使用します。 左外部結合では、結合する 2 つのテーブルのうち 2 番目 (右側) のテーブルに対応するレコードがなくても、1 番目 (左側) のテーブルのレコードがすべて追加されます。

右外部結合を作成するには、RIGHT JOIN 操作を使用します。 右外部結合では、結合する 2 つのテーブルのうち 1 番目 (左側) のテーブルに対応するレコードがなくても、2 番目 (右側) のテーブルのレコードがすべて追加されます。

たとえば、Departments テーブル (左側) と Employees テーブル (右側) がある場合に、社員が配属されていない部署も含めたすべての部署を選択するには、LEFT JOIN 操作を使用します。 どの部署にも所属しない社員も含めた全社員を選択するには、RIGHT JOIN 操作を使用します。

次の例では、Categories テーブルと Products テーブルを CategoryID フィールドで結合する方法を示しています。 このクエリでは、商品がまったくない商品区分も含めて、すべての商品区分の一覧が出力されます。

SELECT CategoryName, ProductName FROM Categories LEFT JOIN Products ON Categories.CategoryID = Products.CategoryID;

この例では、CategoryID は結合フィールドですが、SELECT ステートメントで指定されていないため、クエリ結果には含まれません。 結合フィールドを含めるには、フォールド名 (この場合は Categories.CategoryID) を SELECT ステートメントに指定します。

結合フィールドのデータが同じレコードのみを選択するクエリを作成するには、INNER JOIN 操作を使用します。

  • LEFT JOIN または RIGHT JOIN は、INNER JOIN の入れ子にすることができますが、INNER JOIN は LEFT JOIN または RIGHT JOIN の入れ子にすることはできません。 結合を他の結合にネストする方法については、INNER JOIN 操作に関するページのネストの説明を参照してください

  • 複数の ON 句をリンクすることができます。 詳細については、INNER JOIN 操作に関するページのリンクの説明を参照してください。

メモまたは OLE オブジェクトのデータを含むフィールドを結合しようとすると、エラーが発生します。



ヘルプを表示

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

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

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

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

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

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

×