PR

 表1表2の二つのテーブルを検索対象にする,次のSQL文を考えます。

表1●[顧客]テーブルのカラム値
表1●[顧客]テーブルのカラム値
性別は,0=男性,1=女性

表2●[販売]テーブルのカラム値
表2●[販売]テーブルのカラム値

SELECT 販売日,顧客名,商品コード,数量 FROM 顧客,販売 WHERE 顧客.顧客番号 = 販売.顧客番号 AND 顧客.顧客名 = '清水香織'

意味:[顧客]テーブルの[顧客番号]と,[販売]テーブルの[顧客番号]が同じ値であるという条件で[顧客]テーブルと[販売]テーブルを結合し,[顧客名]の値が「清水香織」である,[販売日][顧客名][商品コード][数量]を抽出

 このSQL文の処理手続きの説明を説明します。考えられる処理手続きのパターンをすべて示したいところですが,ジョインを実施する場合,処理手続きのパターンは何パターンにもなります。まず,ジョインの処理方法には複数あります。そして,それぞれのジョインの処理方法ごとに,何通りもの手続きが考えられるからです。

 代表的なジョインの処理方法には,「ネステッドループ・ジョイン」「ソートマージ・ジョイン」「ハッシュ・ジョイン」――があります。それらのうち今回は,ソートマージ・ジョインとハッシュ・ジョインを説明します。ネステッドループ・ジョインは処理手続きと併せて,次回以降で説明します。

 各ジョインの処理方法はRDBMSによって異なります。ここでは特徴をつかめるように説明します。