ORACLE SQLのSELECT文が遅いとき、OR句の置き換え・書き換えによってチューニングできる場合があります。
下記のようなSELECT文が遅い場合は、OR句をUNION ALLに置き換えてみましょう。
UNION ALLの方が高速に結果を返してくれる場合は、UNION ALLを使うことをオススメします。
SQLのサンプル
◆SELECT文の例
select
*
from
table1 a
where
a.div_cd = ‘100’
OR a.div_cd = ‘200’
;
*
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’
;
*
from
table1 a
where
a.div_cd = ‘100’
union all
select
*
from
table1 a
where
a.div_cd = ‘200’
;
最後に
最後までお読みいただきありがとうございます。
SQLのチューニングについては、「SELECT文のSQLチューニング方法まとめ」で詳しく解説していますので、ぜひ参考にしてください。