standingzzz's Oracle memo

OracleSQLチューニングの豊富な経歴を生かして、主に11gと12cのオプティマイザ動作の違いなどについて、実用的な検証結果をメモしています。

optimizer

Oracle12c NULLデータの割合によるインデックス性能確認

概要 データにNULLが多く含まれる場合のインデックス性能について確認します。 Oracle Database 12c Enterprise Edition Release 12.2.0.1.0 - 64bit Production CentOS Linux release 7.3.1611 (Core) 検証 パターンA NULLデータが全体の1%の場合 ^ テー…

Oracle12c ヒント句による実行計画の制御[ORDERED, LEADING, USE_NL, INDEX, OPT_PARAM]

概要 SQLが望ましくない実行計画となっている場合に、 ヒント句により結合順などを制御する例をあげます。 Oracle Database 12c Enterprise Edition Release 12.2.0.1.0 - 64bit Production CentOS Linux release 7.3.1611 (Core) 検証 結合テスト用オブジェ…

Oracle12c OPTIMIZER_FEATURESによるNOT EXISTS句の実行計画の違いを確認する その1

概要 OPTIMIZER_FEATURESによるNOT EXISTS句の実行計画の違いを確認します。 検証のベースとなるSQL select count(*) from tab_a a left join tab_b b on b.id = a.id and b.cdate > sysdate - 1/24 where not exists ( select 1 from tab_b b2 where b2.id …