DBリンクを含む問い合わせの場合、リンク先の統計情報は考慮しないでプランを立てているようだ。
わざわざネットでつなげてリンク先の状態を調べるのは逆にコストがかかると判断するらしい。
例えば、GROUP BYしたサブクエリと実テーブルを結合し、実テーブル側で件数を大幅に絞れる状態のとき、
同一インスタンス内のテーブルを結合するか、リンク先のテーブルを結合するかではプランが変わる。
リンク先のテーブルを結合する場合では、GROUP BYしたサブクエリの中でフルスキャンが発生するので、
サブクエリの中でリンク先テーブルも結合するか、(NOT )EXISTSであらかじめ件数を絞るべきである。
最終更新:2009年11月04日 11:04