Re: Semi-deterministic?

From: Sayan Sergeevich Malakshinov <malakshinovss_at_psbank.ru>
Date: Thu, 6 Feb 2014 10:08:23 +0400
Message-ID: <OF4014B502.71BF1CE3-ON44257C77.00208FBA-44257C77.0021BA00_at_psbank.ru>



Hi Riyaj,

your solution is plan dependent - executions count depends on join order, even if this inline view was not merged. Please, compare:

            select /*+ monitor leading(p1) */ l1, p1.n1
            from t1 ,
               (select /*+ no_merge */ pkg1.calculate_n1(100) n1 from dual 
where rownum=1) p1
            where rownum <=100
and 
            select /*+ monitor leading(t1) */ l1, p1.n1
            from t1 ,
               (select /*+ no_merge */ pkg1.calculate_n1(100) n1 from dual 
where rownum=1) p1
            where rownum <=100

btw, we cannot use "use_hash" hint, because query has no equi-join predicates.

--

Best regards,
Sayan Malakshinov
hhtp://orasql.org
--

http://www.freelists.org/webpage/oracle-l Received on Thu Feb 06 2014 - 07:08:23 CET

Original text of this message