Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Estou com um problema para somar horas de um campo datetime.
no banco de dados tenho a coluna de tempo de duração de um processo e ela está formatado como "dd/MM/mm hh:mm:ss" porém preciso fazer a soma somente das horas e minutos, pois preciso saber do total de horas que teve de execução dessa tarefa em determinado período.
no script fiz um load do campo para separar as horas da data, da seguinte forma
time(frac([TABELA.VL_TEMPO_DURACAO])) as TEMPO_DURACAO
ai quando jogo ele em uma tabela ele me retorna somente a hora, exatamente como preciso.
mas quando faço um sum(tempo_duracao) ele me retorna um valor totalmente diferente do valor que deveria me retornar.
no sum, também coloquei um "interval" mas o resultado ficou ainda mais estranho
@Pbaptista
Usa a função aggr para este conjunto de valores, como o exemplo:
interval (sum (aggr (sum (TEMPO_DURACAO), ID_PROCESSO)))
Att, Matheus
@Pbaptista
Tente adicionar a cláusula distincnt a sua expressão.
interval(sum(distinct durationInterval))
Att, Matheus
Mas fazendo a soma distinta ele vai excluir valores essenciais para soma
veja nesse exemplo que fiz
aqui a soma distinta foi de 66:55, porém nesse período o valor correto seria de 71:11, e a diferença está justamente nos valores repetidos
E se eu removo um dos valores repetidos, o valor fica exatamente igual do qlik
@Pbaptista
Usa a função aggr para este conjunto de valores, como o exemplo:
interval (sum (aggr (sum (TEMPO_DURACAO), ID_PROCESSO)))
Att, Matheus
@Pbaptista
Conseguiu resolver?
Feche o tópico com a solução aceita, deixe um joia se a solução foi útil.