Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
Home -> Community -> Usenet -> c.d.o.server -> Re: Deep meaning of error 3232
"Jonathan Lewis" <jonathan_at_jlcomp.demon.co.uk> a écrit dans le message
de news:cc5k2c$e6b$1_at_hercules.btinternet.com...
>
> I won't say anything about the 3232, but if you
> have one hint in this query, you need a handful
> to make sure the one is not abused.
>
> You said
> > GLB_DETENTEUR is a temporary table (10-12 rows/tx max)
>
> Oracle has got the cardinality for this as 8168 -
> which is why the join has gone wrong.
> Options:
> a) Get the tables in the right order then hint with
> ordered use_nl(t1) index(t1 DETENTEUR_PK)
> or
> b) Use dbms_stats.set_table_sets to tell Oracle just
> once that the GTT gets 10 rows (or less) if you
> prefer whenever it is used.
>
Thank you Jonathan for that precious piece of advice.
After posting, I thought that HJ was the key thing to avoid and I hinted that query with USE_NL but I'll try to use ordered as you said.
Cheers
-- SLReceived on Sat Jul 03 2004 - 04:40:22 CDT