SEMIJOIN (JOIN オプション)

SEMIJOIN を使用すると、オプティマイザはセミジョインの最適化を実行しようとします。 SEMIJOIN が指定されていない場合、オプティマイザはセミジョインの最適化を適用するかどうかを決定します。

注:セミジョインは情報統合ツールです。これは、右側(RHS)から取得される行の数を減らす高速アルゴリズムです。 2番目のデータソースにプッシュされたFETCHを書き換えます。このために、左側の最初のクエリ(LHS)から返された一意の値によって提供される選択基準を使用します。セミジョインでは、LHSが評価されてメモリ内のテーブルにロードされ、そのカーディナリティが評価されます。カーディナリティが十分に小さい場合は、LHSからの結合基準のすべての値を含むIN句またはOR式が作成されます。次に、句または式がRHSのWHERE句に追加され、データベースにプッシュされます。このようにして、一致する行のみがRHSから取得されます。

セミジョインは、IN句またはOR式をサポートするデータソースに対してフェッチする単一ノードとしてRHSを照会できる場合にのみ試行できます。

オペレーター

JOIN

構文

セミジョイン

SELECT column1 FROM table1 INNER {OPTION semijoin} JOIN table2 ON table1.id = table2.id