Hitachi

Hitachi Advanced Data Binder AP開発ガイド


5.11.6 行値構成子を指定したIN述語に関する等価変換(同じ表の列指定の抽出)

IN述語の左側の行値構成子に,複数の表の列指定がある場合や,列指定とスカラ演算を含む指定が混在している場合,同じ表の列指定だけで構成されるIN述語をAND条件で追加する等価変換が行われます。ただし,論理演算子ORNOTに指定されたIN述語は,等価変換されません。

この等価変換によって,表を結合する前に追加したIN述語を評価できるようになり,表の結合処理への入力行を削減できることがあります。また,表の検索時にインデクスが使用されることがあります。

等価変換の例を次に示します。例中のC1C2C3は列名を意味しています。

〈この項の構成〉

(1) 例1

[図データ]

[説明]

IN述語の左側に,複数の表の列指定とスカラ演算が指定されている行値構成子があります。この行値構成子から同じ表の列指定が抽出され,IN述語の条件が追加されます。等価変換後,追加されたIN述語の条件で,探索時にインデクスが使用されることがあります。

(2) 等価変換される条件の形式

等価変換される条件の形式を次に示します。