ハッシュ結合
オプティマイザが見積もった小さいテーブルの結合対象となる行を全件読み込む.
結合キーをハッシュ関数にかけてハッシュテーブルとしてメモリ上に乗せる.
大きいテーブルの結合対象となる行を読み込み,結合キーをハッシュ関数にかけてハッシュテーブルと突き合わせていく.
CBOでのみ利用可能で,RBOでは利用できない.
等価結合にのみ適用可能.
小さいテーブルを全件読み込んでハッシュテーブルを作るまで最初の1件も返すことができない.
多段結合ではハッシュテーブルをたくさん作る必要があるため,メモリを圧迫する.
MySQLではMySQL 8.0から利用可能になった.
http://www.doppo1.net/oracle/tuning/hash-join.html