I vacuum analyze the test db regularly so that's not an issue
with the numbers I posted. The default on oracle is to
use the CBO. I have seen some queries like this where
the rule based optimizer is faster (sometimes a lot faster)
but it's hit and miss (and I think dependent on quirks
of both the data and the rule based optimizer). One other
hint which sometimes made a difference for oracle was
to say /*+ FIRST_ROWS */ (I think thats right, though it's
from memory).
I don't know what people think about trying to tweak the
queries like that since it's all such a black art (to me at
least).