Comunidad de diseño web y desarrollo en internet online

Sumar Horas Laborales por Semana

Citar            
MensajeEscrito el 07 Abr 2011 10:50 pm
Hola a todos. :)
espero me puedan orientar, resulta que tengo que sumar las horas laboradas que estan en una base de datos y luego mostrar el numero de horas trabajadas, se que es algo muy usual, pero aun no conozco mucho de funciones de fecha. :cry:

las horas laborales las inserto en base a las horas que se trabajo, pero esto es por día, ahora quiero realizar una consulta que me muestre las horas laborales en base a la semana pero no se como sumar estas horas :?

Este es mi consulta

Código MySQL :

SELECT horasxDia FROM `historial` WHERE idusuario='2' and fecha BETWEEN '2011-04-04' AND '2011-04-07'


Aquí me muestra las horas en las que laboro el usuario con el id 2, pero me las aparece en forma de listado, lo que quiero es que me muestre solo el resultado de las sumas de esas horas que serian las horas laboradas por semana.

De antemano Gracias. :)

Por langel_rr

20 de clabLevel



Genero:Masculino  

Desarollador Web

chrome
Citar            
MensajeEscrito el 08 Abr 2011 10:58 am
SELECT SUM(horasxDia) FROM `historial` HAVING idusuario='2' and fecha>='2011-04-04' AND fecha<='2011-04-07'
Pruebalo y me dices, que no me acuerdo y no tengo SQL aquí.

Saludos

Por neisserian89

65 de clabLevel



 

firefox
Citar            
MensajeEscrito el 08 Abr 2011 03:59 pm
Antes que nada gracias por aclarar mi duda, ahora el having marca error de clausula en la consulta pero de cualquier forma como lo tenia me resulto y queda algo asi. :)

Código MySQL :

SELECT SUM(horasxdia) FROM `historial` where idusuario='2' and fecha BETWEEN '2011-03-25' AND '2011-04-07'


si me suma las horas pero tengo un pequeño problema, como tengo el formato de hrs= 00:00:00

si tengo por ejemplo 01:00:00, 00:30:00 y 01:20:00 me debe de aparecer 250 que son las hrs de trabajo, pero igual me cuenta los segundos y me queda así 25000 agrega los ceros de los segundos.. :shock:

de que manera puedo anular esos ceros ya que asi la cantidad de horas no seria la correcta..?
De antemano Gracias :)

Por langel_rr

20 de clabLevel



Genero:Masculino  

Desarollador Web

chrome
Citar            
MensajeEscrito el 08 Abr 2011 04:23 pm
me acabo de dar cuenta de un error de lógica, :P
en el ejemplo anterior tengo 01:00:00, 00:30:00 y 01:20:00 no es lo mismo 250 y 2:50 hablando de horas, de que forma puedo usar el método SUM() pero conservando el formato de hora? :?

Nuevamente gracias y espero me puedan orientar :)

Por langel_rr

20 de clabLevel



Genero:Masculino  

Desarollador Web

chrome
Citar            
MensajeEscrito el 08 Abr 2011 07:11 pm
Te funciona con having o where?, que ya me quede con la duda

Por neisserian89

65 de clabLevel



 

firefox
Citar            
MensajeEscrito el 08 Abr 2011 07:12 pm
Y en cuanto a lo de la suma de horas, que motor de bd usas?, mysql?

Por neisserian89

65 de clabLevel



 

firefox
Citar            
MensajeEscrito el 11 Abr 2011 10:55 am
Select SUM(datediff("s",FechaEntrada,FechaSalida)) as totales From horascurradas

A si funciona, lo he probado, y ya en el where filtra lo que tengas que filtrar.

Por neisserian89

65 de clabLevel



 

firefox
Citar            
MensajeEscrito el 11 Abr 2011 02:55 pm
Antes que nada gracias por aclarar mis dudas la verdad si funciono y lo maneje con mysql Versión 5. era lo que queria :wink:

Por langel_rr

20 de clabLevel



Genero:Masculino  

Desarollador Web

chrome

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.