スポンサーリンク

2007-12-27

Tips121 - 2つのテーブルを右外部結合する RIGHT JOIN

結合する2つのテーブル例
[M_顧客マスター]
顧客ID 名前
1  大木
2  石塚
3  南

[T_販売]
販売ID 顧客ID 商品名 数量
1   2   ソファー  2
2   5   ベッド   1

結合例
Dim SQL As String
Dim rs As Recordset
SQL = "SELECT 商品名 , 名前 FROM T_販売 RIGHT JOIN M_顧客マスター ON T_販売.顧客ID = M_顧客マスター.顧客ID"
Set rs = CurrentDb.OpenRecordset(SQL)
これを実行すると、下記のデータが返ります。

商品名 名前
大木
ソファー 石塚


このように左外部結合のRIGHT JOINを使った場合、M_顧客マスターの全レコードと顧客IDが一致するT_販売のレコードが取得できます。
従いまして、T_販売の顧客IDが一致しているソファーのみ抽出され、顧客名は全て抽出されています。

前回のLEFT JOINと比べてください。違いが分かると思います。