Somar horas

Firebird

03/02/2004

Olá,
tenho um sistema que pega o tempo que o pessoal demora para digitar alguns documentos. E fui cobrado por um relatório que mostre a média do tempo de digitação de cada usuário, estou fazendo o seguinte, para tentar somar o tempo de cada usuario:

[color=blue:52d9dc2959]SELECT
DOC_DIG_MALOTE.USUARIO,
SUM(EXTRACT(HOUR FROM DOC_DIG_MALOTE.TEMPO)) AS HORAS,
SUM(EXTRACT(MINUTE FROM DOC_DIG_MALOTE.TEMPO)) AS MINUTOS,
SUM(EXTRACT(SECOND FROM DOC_DIG_MALOTE.TEMPO)) As SEGUNDOS
FROM
DOC_DIG_MALOTE
GROUP BY
USUARIO[/color:52d9dc2959]

Mas não consigo juntar isso depois como um campo TIME, nem no delphi.
Sem falar que ainda preciso tirar a média.

[b:52d9dc2959]Estou precisando muito de ajuda.[/b:52d9dc2959]

[b:52d9dc2959]Obrigado :( [/b:52d9dc2959]


Bruno Tafarelo

Bruno Tafarelo

Curtidas 0

Respostas

Maicongabriel

Maicongabriel

03/02/2004

O campo ´DOC_DIG_MALOTE.TEMPO´ possui o tempo que o usuário ´DOC_DIG_MALOTE.USUARIO´ levou para digitar o malote X ?
Qual campo difere os malotes uns dos outros ? Campo CODIGO ?

:idea: Pq você simplesmente não faz um ::
SELECT SUM(DOC_DIG_MALOTE.TEMPO) AS TOTAL FROM SELECT DOC_DIG_MALOTE
..para obter o tempo total de todas as digitações (100¬ do tempo) e depoiz faz uma regra de 3
((TEMPO * 100) / TOTAL)
para obter o tempo(MEDIA) de cada um dos Usuários ?

:!: Pq a SQL que você construiu realmente não tem muita utilidade, uma vez que você já possui um campo com o tempo total do USUARIO! Ou eu não lhe entendi bem...


GOSTEI 0
Bruno Tafarelo

Bruno Tafarelo

03/02/2004

E ai cara, valeu, mas não da para fazer desse jeito que você disse. Não é possivel executar este select, ele da a seguinte mesagem de erro:

[color=red:5c9e889b8b]Unsuccessful execution caused by system error that does not preclude successful execution of subsequent statements.
data type not supported for arithmetic.[/color:5c9e889b8b]

sabe, já até tinha desistido de fazer isso, foi quando consegui, criando uma função no delphi, mas o problema é que realmente precisa ser no banco, pelo menos é assim que meu chefe quer. Caso tenha outra idéia, por favor envie-me.

Valeu


GOSTEI 0
Afarias

Afarias

03/02/2004

Vc podia simplesmente converter tudo para uma unidade (Horas ou Minutos) e mostrar como um número apenas.



T+


GOSTEI 0
POSTAR