ログインしてさらにmixiを楽しもう

コメントを投稿して情報交換!
更新通知を受け取って、最新情報をゲット!

Oracle, SQLServer, DB2... etcコミュのoracle10gでのwhere句の記述順について

  • mixiチェック
  • このエントリーをはてなブックマークに追加
トピックを検索したのですが見つからなかったので書き込みさせていただきます。

今までWhere句に条件を記述する場合、AND条件であれば後に書く物から先に評価され、OR条件であれば先に書く物から評価されるので大きく絞り込める条件を書く場合はそれに気をつける、と言うように記憶していたのですが、
今日同僚から「oracleの9iか10gから、その挙動は逆になった」という話を聞きました。
手持ちの本などを調べてみましたが、そのような記述はなく、googleで
「oracle10g where チューニング」という条件で検索してみてもそれらしいことは書いてありませんでした。

さて、このような事実は本当にあるのでしょうか?。
その人が言うには内部的に変わっているので公表されてないんだ、とのことですが(じゃあ何でその人は知ってるねん、と言う話になりますが、思わずつっこみ忘れてしまいました(^^;))

どなたかご存じの方がおられたら教えていただけないでしょうか?

コメント(7)

これって、ルールベースの時の挙動ではなかったでしたっけ。
ばっちし公表されてます。
ルールベース、コストベースで検索してみてください。
逆になったというより、表の件数をあらかじめ取得しておいて
効率よい順番にWhere句発動するということです。
他にも機能てんこもりなので、ぜひしらべてみてくださいね。
たしか9iからコストベースになったってきいた気がします。
皆さんありがとうございます。なるほど、ルールベースかコストベースかの違い、という意味なんですね。
ということは一概に条件の書く位置だけではパフォーマンス向上にはつながらないと言うことなんですね。

ヒントはいただきましたので、後は色々と調べてみたいと思います。
ありがとうございました。

ログインすると、みんなのコメントがもっと見れるよ

mixiユーザー
ログインしてコメントしよう!

Oracle, SQLServer, DB2... etc 更新情報

Oracle, SQLServer, DB2... etcのメンバーはこんなコミュニティにも参加しています

星印の数は、共通して参加しているメンバーが多いほど増えます。

人気コミュニティランキング