Sou iniciante em banco de dados, estou trabalhando a pouco tempo na área e me deparei com um problema de performance ao executar uma query.
Eu criei um painel de monitoração que fica executando essa query para trazer alguns dados de 10 em 10 segundos.
Segue o código abaixo:
DECLARE @DataIni datetime
SELECT @DataIni = CONVERT(varchar(4),DATEPART(YEAR,GETDATE()))+'-'+CONVERT(varchar(2),DATEPART(MONTH,GETDATE()))+'-'++CONVERT(varchar(2),DATEPART(DAY,GETDATE()))+' '+'00:00:00'
SELECT Chamado.SolID,
Chamado.SolData Abertura,
HR.Data TransPrimeiroNivel,
HR.DataAssumido Assumido,
dbo.Function_FormataHoraMinutoSegundo(DATEDIFF(SECOND, HR.Data,HR.DataAssumido)) Tempo
FROM
HistoricoResponsavel HR (NOLOCK)
INNER JOIN Solicitacao Chamado (NOLOCK) ON (Chamado.SolID = HR.SolID)
WHERE
HR.Data BETWEEN @DataIni AND (SELECT GETDATE())
AND HR.UsuID = 3
ORDER BY Tempo DESC
Eu sei que o problema está na conversão da data inicial, pois se eu informar a data inicial ele executa em menos de 1 segundo. Esse painel deve ser dinâmico e a cada dia ele deve buscar os dados entre primeira hora do dia atual até o momento atual, ou seja, das '00:00:00' até o GETDATE().
Existe alguma outra solução que não afete a performance da query? A mesma está demorando em torno de 10 a 15 segundos para executar.
Pergunta
sebola
Bom dia a todos,
Sou iniciante em banco de dados, estou trabalhando a pouco tempo na área e me deparei com um problema de performance ao executar uma query.
Eu criei um painel de monitoração que fica executando essa query para trazer alguns dados de 10 em 10 segundos.
Segue o código abaixo:
Eu sei que o problema está na conversão da data inicial, pois se eu informar a data inicial ele executa em menos de 1 segundo. Esse painel deve ser dinâmico e a cada dia ele deve buscar os dados entre primeira hora do dia atual até o momento atual, ou seja, das '00:00:00' até o GETDATE().
Existe alguma outra solução que não afete a performance da query? A mesma está demorando em torno de 10 a 15 segundos para executar.
Obrigado a todos
Att,
Editado por sebolaLink para o comentário
Compartilhar em outros sites
4 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.