Suma de Horas

28/09/2008 - 19:15 por raul | Informe spam
Hola,

Tengo una tabla en la que guardo en formato datetime las horas que lleva
trabajada cada persona.

Ahora para unos reportes necesito la suma de horas trabajadas entre
todas las personas en un día.

Cuando ejecuta esta consulta:

select sum(horastrabajadas_htr) as TotalHoras from t_horastrabajador where
fecha_htr>='20080928 00:00' AND fecha_htr<='20080929 23:59'



Me dice que el tipo de datos smalldatetime no es valido para el operador
sum.

¿ Como podría hacer la suma de las horas trabajadas por todas las personas
en cierto intervalo de tiempo?.

Lo único que se me ocurre es crear un procedimiento que recorra un recordset
e irlas sumando una por una con dateadd, perooooo..., me parece poco
profesional.

Agradecido desde ya,



raul l. cobos

http://www.softwarelavanderias.es

http://www.lavanderias.org
 

Leer las respuestas

#1 Maxi Accotto
29/09/2008 - 01:00 | Informe spam
Hola, revise el uso de datediff., si saca el datediff de cada persona en
minutos y luego suma todos esos minutos tendra el total de minutos por dia.


Saludos
Maxi Accotto
Microsoft MVP en SQLServer
SQltotalconsulting
-

"raul" escribió en el mensaje de
noticias:gboel7$459$
Hola,

Tengo una tabla en la que guardo en formato datetime las horas que
lleva trabajada cada persona.

Ahora para unos reportes necesito la suma de horas trabajadas entre
todas las personas en un día.

Cuando ejecuta esta consulta:

select sum(horastrabajadas_htr) as TotalHoras from t_horastrabajador where
fecha_htr>='20080928 00:00' AND fecha_htr<='20080929 23:59'



Me dice que el tipo de datos smalldatetime no es valido para el operador
sum.

¿ Como podría hacer la suma de las horas trabajadas por todas las personas
en cierto intervalo de tiempo?.

Lo único que se me ocurre es crear un procedimiento que recorra un
recordset e irlas sumando una por una con dateadd, perooooo..., me parece
poco profesional.

Agradecido desde ya,



raul l. cobos

http://www.softwarelavanderias.es

http://www.lavanderias.org










Preguntas similares