OR句の置き換えによるチューニング方法

ORACLE SQLのSELECT文が遅いとき、OR句の置き換え・書き換えによってチューニングできる場合があります。

下記のようなSELECT文が遅い場合は、OR句をUNION ALLに置き換えてみましょう。

UNION ALLの方が高速に結果を返してくれる場合は、UNION ALLを使うことをオススメします。

◆SELECT文の例

select
  *
from
  table1 a
where
  a.div_cd = ‘100’
  OR a.div_cd = ‘200’
;

◆置き換えの例

select
  *
from
  table1 a
where
  a.div_cd = ‘100’
union all
select
  *
from
  table1 a
where
  a.div_cd = ‘200’
;