dbandre29 0 Denunciar post Postado Novembro 28, 2005 Alguém poderia me dar uma esplicação sobre hints em querysEX: SELECT /*+rule*/ distinct C.CLIE_CODIGO, O.OPOR_ID FROM CLIENTE_PORTAL CNão entendo o que é , quais são e quando usá-los[]s, Andre Compartilhar este post Link para o post Compartilhar em outros sites
alphamek 2 Denunciar post Postado Novembro 28, 2005 Olá, HINTS são dicas que você utiliza em comandos DML para melhorar performance, o exemplo que você passou, o HINT /*+rule*/, você irá estar forçando seu OTIMIZADOR do banco de dados ler a tabela por REGRA, isso acontece quando você não tem estatísticas na tabela. Existem muitas outras, como /*+PARALLEL(DEGREE 5)*/, /*+APPEND*/ e etc... e cada um varia conforme seu comando DML. Abraços, http://forum.imasters.com.br/public/style_emoticons/default/grin.gif Compartilhar este post Link para o post Compartilhar em outros sites
Motta 645 Denunciar post Postado Novembro 28, 2005 ... você irá estar forçando seu OTIMIZADOR ... Na realidade "sugerindo humildemente" na sua posição de unidade de carbono, pois o otimizador pode ignorar teu hint... :( :blink: http://forum.imasters.com.br/public/style_emoticons/default/assobiando.gif http://forum.imasters.com.br/public/style_emoticons/default/clap.gif http://forum.imasters.com.br/public/style_emoticons/default/sick.gif http://forum.imasters.com.br/public/style_emoticons/default/grin.gif http://forum.imasters.com.br/public/style_emoticons/default/blush.gif :) Na maior parte das vezes que usei funcionou legal porém !! Compartilhar este post Link para o post Compartilhar em outros sites
alphamek 2 Denunciar post Postado Novembro 28, 2005 hehehehehe.... Deixa eu explicar melhor: CASO sua tabela não TENHA ESTATÍSTICAS, e sua base de dados esteja com optimizer_mode = CHOOSE, e você no seu SELECT (DML) utilizar o HINT /*+rule*/ blá blá blá, ele irá se basear em REGRAS para processar sua consulta. Pelo menos é o que aponta no EXPLAIN PLAN do select caso você deixe um: SQL > set autotrace traceonly explain Acho que FUNFA! Pois teria que funcionar, só se existir um JOIn com outra tabela que não funfe .. eheheheheheh Motta, eu não entendi a parte : Na realidade "sugerindo humildemente" na sua posição de unidade de carbono, pois o otimizador pode ignorar teu hint... Unidade de Carbono? hehehehehehehe Abraços, http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif Compartilhar este post Link para o post Compartilhar em outros sites
Motta 645 Denunciar post Postado Novembro 28, 2005 Unidade de carbono vem de Star Trek (coisa de nerd...), era como a máquina se referia aos humanos ... Já fiz com estatiscas atualizadas , mas devido ao indice com uma busca em cima de muitos valores o plano retornou com o uso de full table scan , trocamos o hint de index para /*+ FIRST_ROWS */ ou /*+ ALL_ROWS */ (NÃO LEMBRO) e melhorou o desempenho. Depois que funciona eu como desenvolvedor típico deixo pra lá ..... Já um dba que saber pq funciona e pq não ..... :huh: :unsure: :D Compartilhar este post Link para o post Compartilhar em outros sites
alphamek 2 Denunciar post Postado Novembro 29, 2005 Hummmmmmm.... Star trek... das antigas essa... heheheheheheheheh me lembro do Spok! Risos. É como tu disse.... DBA tem que saber o pq esta funcionando e pq não tá... se complicado o serviço.. hehehehehehe... Abraços, http://forum.imasters.com.br/public/style_emoticons/default/grin.gif Compartilhar este post Link para o post Compartilhar em outros sites