AccessVBA

INNER JOIN 内部結合のSQL

投稿日:


動画で楽にパソコンが身につく方法はこちら>>

リレーションシップで両方のテーブルの共通するフィールドにおいて

同じ値が合った場合に結合するものをINNER JOIN 内部結合といいます。

VBA書式:

FROM テーブル1 INNER JOIN テーブル2 ON テーブル1.フィールド1 = テーブル2.フィールド2

結合するフィールド名は同じでなくてもかまいません。
ただし、フィールドが Numeric 型以外のときは、
両方のテーブルのフィールドのデータ型を同じにする必要があります。

また複数のON句をつなげることも出来ます。

FROM テーブル1 INNER JOIN テーブル2 ON テーブル1.フィールド1 = テーブル2.フィールド1

AND テーブル1.フィールド2 = テーブル2.フィールド2

“=”演算子以外にも ”<“、”>”、”<=”、”>=”、”<>”も使用することが出来ます。

使用例:

SELECT * FROM T_得意先 INNER JOIN T_売上 ON T_得意先.顧客ID = T_売上.顧客ID

フィールド名はT_得意先.顧客IDのようにテーブル名.フィールド名というかたちで

指定します。

INNER JOIN は最も一般的な結合方法です。

例えばT_得意先に顧客IDフィールドがあり、T_売上にも顧客IDフィールドがあった場合、

内部結合をするとT_得意先とT_売上の両方に存在する顧客IDのものだけが

結合されます。

これに対し、T_得意先にはあるが、T_売上にはない顧客IDも表示させたい場合は

LEFT JOINやRIGHT JOIN 操作を使用して外部結合を作成します。


動画で楽にパソコンが身につく方法はこちら>>

-AccessVBA

Copyright© エクセルVBA使い方入門 , 2023 All Rights Reserved Powered by STINGER.