none
SQL demora a retornar consulta de períodos de datas RRS feed

  • Pergunta

  • Olá pessoal boa tarde,

    Tenho uma query que busca dias dos meses e retorna dados com vários critérios, linha a linha obedecendo a data(dias de cada mês)

    Quando eu executo poucos dias 01,02,03 e 04 demora cerca de 15 minutos para executar a query.

    Já quando seleciono todos os dias de um período, um mês ele demora 3 horas.

    Acredito que a perfomance está péssima, tanto no código, como na memória. A quantidade de dados também são grandes. 

    Mas o que vocês podem indicar para reduzir este tempo, e recomendar para que eu possa conhecer e aplicar?

    Muito obrigada

    quinta-feira, 9 de março de 2017 16:05

Respostas

  • Sim.. Seu usuario tem que ter o SHOWPLAN habilitado. Segue um artigo que mostra como fazer isso:

    https://blog.sqlauthority.com/2010/01/05/sql-server-fix-error-262-showplan-permission-denied-in-database/

    att


    William John Adam Trindade
    Analyste-programmeur


    Sogi Informatique ltée
    If you found this post helpful, please "Vote as Helpful". If it actually answered your question, remember to "Mark as Answer". Se achou este post útil, por favor clique em "Votar como útil". Se por acaso respondeu sua dúvida, lembre de "Marcar como Resposta".

    • Marcado como Resposta Thaís Sakamoto quinta-feira, 9 de março de 2017 18:03
    quinta-feira, 9 de março de 2017 17:49
  • O primeiro passo seria analisar a query mostrando o plano de execuçao

    O plano de execuçao vai te dizer exatamente onde estao os gargalos.

    Pode ser que a soluçao seja simplesmente criar um indice. Caso sua query possua inserçoes ou atualizaçoes pode ser que exista uma trigger que esteja atrapalhando.

    A soluçao depende de uma analise bem profunda do plano de execuçao.

    Att


    William John Adam Trindade
    Analyste-programmeur


    Sogi Informatique ltée
    If you found this post helpful, please "Vote as Helpful". If it actually answered your question, remember to "Mark as Answer". Se achou este post útil, por favor clique em "Votar como útil". Se por acaso respondeu sua dúvida, lembre de "Marcar como Resposta".

    • Marcado como Resposta Thaís Sakamoto quinta-feira, 9 de março de 2017 18:03
    quinta-feira, 9 de março de 2017 17:31

Todas as Respostas

  • O primeiro passo seria analisar a query mostrando o plano de execuçao

    O plano de execuçao vai te dizer exatamente onde estao os gargalos.

    Pode ser que a soluçao seja simplesmente criar um indice. Caso sua query possua inserçoes ou atualizaçoes pode ser que exista uma trigger que esteja atrapalhando.

    A soluçao depende de uma analise bem profunda do plano de execuçao.

    Att


    William John Adam Trindade
    Analyste-programmeur


    Sogi Informatique ltée
    If you found this post helpful, please "Vote as Helpful". If it actually answered your question, remember to "Mark as Answer". Se achou este post útil, por favor clique em "Votar como útil". Se por acaso respondeu sua dúvida, lembre de "Marcar como Resposta".

    • Marcado como Resposta Thaís Sakamoto quinta-feira, 9 de março de 2017 18:03
    quinta-feira, 9 de março de 2017 17:31
  • Obrigada William

    Neste caso apresenta o erro Msg 262.

    Vou precisar que  administrador me dê acesso?

    Obrigada

    quinta-feira, 9 de março de 2017 17:45
  • Sim.. Seu usuario tem que ter o SHOWPLAN habilitado. Segue um artigo que mostra como fazer isso:

    https://blog.sqlauthority.com/2010/01/05/sql-server-fix-error-262-showplan-permission-denied-in-database/

    att


    William John Adam Trindade
    Analyste-programmeur


    Sogi Informatique ltée
    If you found this post helpful, please "Vote as Helpful". If it actually answered your question, remember to "Mark as Answer". Se achou este post útil, por favor clique em "Votar como útil". Se por acaso respondeu sua dúvida, lembre de "Marcar como Resposta".

    • Marcado como Resposta Thaís Sakamoto quinta-feira, 9 de março de 2017 18:03
    quinta-feira, 9 de março de 2017 17:49