Oracle 10は短絡評価クエリをサポートしていますか?はいの場合、それを使用するための特別なキーがありますか?
2 に答える
5
あなたはおそらく短絡評価について話しているでしょう。
DBMS にはコストベースのオプティマイザがあります。条件が最初に評価されるという保証はなく、これを有効にするための特別なキーはありません。
PL/SQLでは短絡評価が使用されることに注意してください
于 2013-01-14T09:48:53.130 に答える
3
オラクルが見た唯一の短絡は、NVLとCOALESCEに関連しています。
SELECT NVL(1,1/0) FROM DUAL
SELECT COALESCE(1,1/0) FROM DUAL
NVL は両側を評価してエラーをスローしますが、合体はしません。
decode
また、同じことをしているようにも見えます:
SELECT decode(1,1,9,2,1/0) FROM DUAL
2 番目の部分を評価していないため、エラーのスローを回避します。
SQL Server オプティマイザーでは、クエリ エンジンがこの種のステートメントを書き換えて、このようなショート サーキットの例で問題を引き起こす可能性があることを知っています。そのため、原則として、ロジック内のショート サーキットに依存するべきではありません。同じことが Oracle にも当てはまります。
于 2013-01-14T09:50:54.157 に答える