今佳境のプロジェクトに突っ込まれていて、外部パートナーさんが作ったSQLをチューニングしているのですが、今回「え?そうなの?」と思ったことがあったのでメモ。どうせ次にやるときには、また忘れてるんで。。。(^^; 環境は Oracle 10g Release2 Standard Edition コストベースオプティマイザ ANALYZE TABLE ... SAMPLE 30 PERCENT な感じです。 OR条件をREGEXP_LIKE関数に変更する 当然indexの状態や式などモノによっても変わりますが、今回「複数カラムの値に対する複数のOR条件」をREGEXP_LIKE関数に変更するとかなりコストが変わりました。以下で、valA、valB、valCは同じSQL内の別ストアド関数で算出された値で1〜5です。 ■使用前 WHERE (valA != '1' OR valB != '3' O