Ir para conteúdo
  • Cadastre-se

dev botao

  • Este tópico foi criado há 3719 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

Postado

Bm dia pessoal, eu tenho uma tabela de serviços e nela eu tenho uma coluna que tem as horas trabalhadas de cada serviço.

 

E eu quero fazer a soma dessas horas sobre cada atendente. Um atendente pode ter vários serviços, daí eu quero somar essas horas de cada serviço. Porém eu não sei fazer isso no Firebird, ou seria melhor fazer isso pelo Delphi? Lembrando que eu preciso dessa soma de horas para exibir em um relatório.

 

 

Eu uso, 

Delphi XE

Report Builder 14

Firebird 2.5

e Componentes InterBase

 

Obrigado

Postado

Bom dia,

 

não sei se a melhor forma seria esta, mais daria para fazer assim...

SELECT
SUM(EXTRACT(HOUR FROM campo_tempo))||':'||
SUM(EXTRACT(MINUTE FROM campo_tempo))||':'||
SUM(CAST(EXTRACT(SECOND FROM campo_tempo) AS INTEGER)) AS total
FROM tabela
Postado

Não sei se entendi bem a sua dúvida, mas você teria que converter tudo para a menor unidade - segundos se o tempo for medido por HH;MM:SS, ou minutos se HH:MM -, somar, converter o resultado de volta para o padrão de medição que você precisa. Assim de bate-pronto, se fosse para fazer em Firebird eu usaria uma stored procedure para fazer as totalizações.

 

Cordialmente,

Carlos.

  • Este tópico foi criado há 3719 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora
×
×
  • Criar Novo...

Informação Importante

Colocamos cookies em seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies, caso contrário, assumiremos que você está bem para continuar.