よくINよりEXISTSの方が速いからEXISTSを使えーなんて言われたことがあり、
鵜呑みにしてなるべくEXISTSを使っていた時期がありました。
そして以前ネットで検索したときに「EXISTSの方が速くなる場合が多いってだけやん!」ってことがわかったのですが、
「あれ?そもそもINとEXISTSにどんな違いがあるんだっけ?」といつも肝心なところを忘れてしまうので、
参考にした記事のリンクを貼っておきます。
hamako9999.net
4 Tweets
5 Shares
6 Users
13 Pockets

INとEXISTSの実行計画の違い
Visual SQL Tuning / wetribe 最近行った現場で見ました。何故か昔から(特にOracle界隈?)盲目的に「INよりEXISTSのほうが速い」という迷信があって、猫も杓子もみーん
ハマコーさんのブログが簡潔でわかりやすいので、
見てもらえば「そういうことね」とわかってもらえるとは思います。
ただ、パフォーマンスチューニングという観点からすると、
EXISTSを使うならINNER JOINで書き換えた方が速いという意見もありますし、
いろいろと選択肢は考えられそうです。