Carregando ...
Desculpe, ocorreu um erro ao carregar o conteúdo.

14703RES: [cflp] Re: comando lento?!

Expandir mensagens
  • Alison - Soft
    18 de fev de 2016
      Bom dia Rogério,



      Não sei se já resolveu seu problema... sem o banco de dados fica difícil analisar, mas faça um teste com a estrutura abaixo e veja se melhora:



      Select First(10) *

      From NOTICIAS

      Left Join CATEGORIAS

      On NOT_CATEGORIA = CAT_CODIGO

      Where NOT_VALIDADEINICIO >= '2016-02-11'

      And NOT_VALIDADEFIM <= '2016-02-11'

      And NOT_PUBLICADO = 'S'

      Order by NOT_DATA Desc, NOT_CODIGO Desc



      Caso a performance continue a mesma, tente criar um índice composto com os campos NOT_VALIDADEINICIO, NOT_VALIDADEFIM e NOT_PUBLICADO e faça um novo teste.

      Ex.: Create Index IXNOTICIAS01 On NOTICIAS(NOT_VALIDADEINICIO, NOT_VALIDADEFIM, NOT_PUBLICADO);



      Abraço,

      Alison







      De: cflp_suporte@... [mailto:cflp_suporte@...]
      Enviada em: quinta-feira, 18 de fevereiro de 2016 09:55
      Para: Cflp Suporte
      Assunto: Re: [cflp] Re: comando lento?!





      Sinceramente, da forma como se encontra, este comando não parece fazer muito sentido...



      Realmente você precisa do Left Join ? Precisa de todos os campos ?



      Porque você não faz uma CTT para resolver os dez primeiros registros da tabela nota, e depois faz a junção ?



      Abraço,








      ==========================
      Eduardo Jedliczka
      Curitiba - Pr
      ==========================



      Em 11 de fevereiro de 2016 09:01, Rogério Pett rogeriopett@... [cflp_suporte] <cflp_suporte@...> escreveu:



      enviei sem terminar...

      tem alguma forma de fazer esse comando ficar mais rápido?

      a tabela tem índice primário o campo código, e índice descend no campo data e índice ascend nos campos validadeinicio, validadefim e título.





      []'s
      Rogério Pett
      www.pett.com.br
      ------------------------------



      2016-02-11 8:57 GMT-02:00 Rogério Pett <rogeriopett@...>:

      Olá pessoal...

      tenho o seguinte comando SQL rodando em PHP e no sinática monitor ele me diz "comando muito lento".
      select first(10) * from NOTICIAS left join CATEGORIAS on NOT_CATEGORIA=CAT_CODIGO where NOT_PUBLICADO='S' and ('2016-02-11' between NOT_VALIDADEINICIO and NOT_VALIDADEFIM) order by NOT_DATA desc, NOT_CODIGO desc

      no ibexpert, ao executar, informa o seguinte.Plan
      PLAN SORT (JOIN (NOTICIAS INDEX (IX_NOT_VALIDADEINICIO, IX_NOT_VALIDADEFIM), CATEGORIAS INDEX (PK_CAT_CODIGO)))

      ------ Performance info ------
      Prepare time = 16ms
      Execute time = 6s 516ms
      Avg fetch time = 651,60 ms
      Current memory = 56.603.848
      Max memory = 113.857.280
      Memory buffers = 2.048
      Reads from disk to cache = 69.109
      Writes from cache to disk = 18
      Fetches from cache = 1.542.543



      []'s
      Rogério Pett
      www.pett.com.br
      ------------------------------











      ---
      Este email foi escaneado pelo Avast antivírus.
      http://www.avast.com


      [As partes desta mensagem que não continham texto foram removidas]
    • Mostrar todas as 6 mensagens neste tópico