これらのSQLServerヒントと同じように機能するヒントはOracleにありますか?
再コンパイル:クエリが実行されるたびに再コンパイルされます(実行プランがパラメーターによって大きく異なる場合)。これは、Oracleのcursor_sharingと比較して最適でしょうか?
最適化:SQLの最初の実行時に別のパラメーターが使用されている場合でも、特定のパラメーターに対してプランを最適化する場合はどうでしょうか。おそらくcursor_sharingでも役立つと思いますか?
これらのSQLServerヒントと同じように機能するヒントはOracleにありますか?
再コンパイル:クエリが実行されるたびに再コンパイルされます(実行プランがパラメーターによって大きく異なる場合)。これは、Oracleのcursor_sharingと比較して最適でしょうか?
最適化:SQLの最初の実行時に別のパラメーターが使用されている場合でも、特定のパラメーターに対してプランを最適化する場合はどうでしょうか。おそらくcursor_sharingでも役立つと思いますか?
私は知りませんでしたが、forums.oracle.comでいくつかのソリューションとの議論を見つけました
11gを使用しているため、Oracleはデフォルトでアダプティブカーソル共有を使用する必要があります。バインド変数を使用するクエリがあり、データが歪んでいる列のヒストグラムが、異なるバインド変数値が異なるクエリプランを使用する必要があることを示している場合、Oracleは同じSQLステートメントに対して複数のクエリプランを自動的に維持します。この動作を取得するためにクエリを具体的にヒントする必要はありません。すでにオプティマイザに組み込まれています。