Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

The Queen

Oracle hints

Recommended Posts

ESTOU COM UM QUERY E PARA OTIMIZA-LA RESOLVI USAR O HINT "RULE". ACONTECE QUE NO PL/SQL DEVELOPER NO EXPLAIN PLAN WINDOW QUANTO EU ESCOLHO O HINT RULE ELE ME MOSTRA UMA MARAVILHA, PORÉM QUANDO EU APLICO O HINT RULE (DESTA FORMA : /*+ RULE */) NO SELECT NADA ACONTECE. ESTOU FAZENDO ALGO ERRADO?

 

AQUI SEGUE A QUERY PARA VOCÊS ANALIZAREM

 

CODE
SELECT /*+ rule */ CTR.CONTRATO aCONTRATO,

(SELECT SUM(ENV.PREMIO_PAGO)

FROM BMCTOOLS.TB_GENERALI_ENVIADOS ENV

WHERE ENV.CONTRATO = CTR.CONTRATO

AND ENV.CANCELADO = 'N') aVALOR_SEGURO

FROM BMCTOOLS.CONTRATO CTR

WHERE CTR.STATUS IN ('2', '3', '6')

AND EXISTS

(SELECT 'X'

FROM BMCTOOLS.PARCELA PAR

WHERE PAR.CONTRATO = CTR.CONTRATO

AND PAR.DT_RCB BETWEEN '01-MAY-2008' AND '10-MAY-2008')

Compartilhar este post


Link para o post
Compartilhar em outros sites

Deveria funcionar

 

rule_hint::=

Text description of sql_elements38.gif follows

Text description of rule_hint

 

The RULE hint explicitly chooses rule-based optimization for a statement block. It also makes the optimizer ignore other hints specified for the statement block.

 

fonte http://download.oracle.com/docs/cd/B10501_...ents7a.htm#8477

 

As duas execuções foram na mesma base (tipo teste x produção) ?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Foram, o que não muda é o GOAL. Ele escreve GOAL=Htin:=Rule, porém não muda em nada. Deve ter haver com o particionamento da base ou algo assim. Coisas de DBA. Queria algo que resolvesse esta deficiencia do dba.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.