楽しみのために、私は今日Toadで組み込みのOracle用オプティマイザーで遊んでいます。それが示唆する最適化の1つは次のとおりです
AND emp.pay_type = NVL('FT', UID)
それ以外の
AND emp.pay_type = 'FT'
私はここで何が起こっているのか混乱しています。そのため、なぜこれがパフォーマンスを向上させるのかについても混乱しています。FTはSQLクエリ内の文字列リテラルであり、したがってNULLになることはないので、なぜこれが違いを生むのでしょうか。フィールド上の既存のインデックスと関係があると思いますが、Oracleのドキュメントで何も見つかりません。