Applies ToAccess for Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

共通のフィールドで一致する値があるたびに、2 つのテーブルからレコードを結合します。

構文

FROM table1 INNER JOIN table2 ON table1.field1compopr table2.field2

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

引数

説明

table1table2

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

field1field2

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

compopr

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

解説

INNER JOIN 操作は、任意の FROM 句で使用できます。 これは最も一般的な結合の種類です。 内部結合は 2 つのテーブルに共通するフィールドで一致する値があるたびに、両方のテーブルからレコードを結合します。

Departments テーブルと Employees テーブルで INNER JOIN を使用して、各部署のすべての従業員を選択できます。 これに対し、すべての部署 (割り当てられている従業員がない部署がある場合でも) またはすべての従業員 (部署に割り当てられていない従業員がいる場合でも) を選択するには、LEFT JOIN または RIGHT JOIN 操作を使用して、外部結合 を作成します。

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

同様の型の 2 つの数値フィールドを結合することができます。 たとえば、AutoNumber フィールドと Long フィールドは同様の型なので結合できます。 しかし、Single 型と Double 型のフィールドを結合することはできません。

次の例では、Categories テーブルと Products テーブルを CategoryID フィールドで結合する方法を示しています。

SELECT CategoryName, ProductNameFROM Categories INNER JOIN ProductsON Categories.CategoryID = Products.CategoryID;

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

次の構文を使用して、複数の ON 句を JOIN ステートメントでリンクすることもできます。

SELECT fieldsFROM table1 INNER JOIN table2ON table1.field1compoprtable2.field1 ANDON table1.field2compoprtable2.field2) ORON table1.field3compoprtable2.field3)];

次の構文を使用して、JOIN ステートメントを入れ子にすることもできます。

SELECT fieldsFROM table1 INNER JOIN(table2 INNER JOIN [( ]table3[INNER JOIN [( ]tablex [INNER JOIN ...)] ON table3.field3compoprtablex.fieldx)]ON table2.field2compoprtable3.field3) ON table1.field1compoprtable2.field2;

LEFT JOIN または RIGHT JOIN は、INNER JOIN の入れ子にすることができますが、INNER JOIN は LEFT JOIN または RIGHT JOIN の入れ子にすることはできません。

ヘルプを表示

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

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

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