Stories
Slash Boxes
Comments
NOTE: use Perl; is on undef hiatus. You can read content, but you can't post it. More info will be forthcoming forthcomingly.

All the Perl that's Practical to Extract and Report

use Perl Log In

Log In

[ Create a new account ]

djberg96 (2603)

djberg96
  (email not shown publicly)

Journal of djberg96 (2603)

Thursday October 07, 2004
02:15 PM

Penelope SQL

[ #21237 ]
I was just reading this article over at ONLamp.com. The author appears to be coming from a MySQL perspective. Let me give you the Oracle perspective - naive join's aren't always bad.

The problem is that subqueries, whether you use 'in' or 'exists' can actually produce worse execution plans than a naive join. Why? The answer is, quite simply, indexes.

I happened to find a Penelope query for a view definition in our production code. I tried the naive join, an 'exists' and an 'in' version. The result is that, without an index on the child select, it just doesn't make a significant difference. I even tried adding the merge_sj hint, but it didn't help.

Addenda: I guess the author is an Oracle consultant after all. I was mislead by a couple unrelated items on the page itself.

The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
 Full
 Abbreviated
 Hidden
More | Login | Reply
Loading... please wait.