MySQL - suma de horas

 
Vista:

suma de horas

Publicado por Janet (6 intervenciones) el 04/07/2008 19:14:07
hola
Me podrian ayudar necesito saber si se puede con un alias (as hrstrabajadas) si puedo sacar la suma de las horas trabajadas con respecto a un id ejemplo su trabajo una jornada de 9 horas comienza a corres sus hrs extras y esta asu vez tiene que sumar cuantas horas extra trabajo

fecha-h_entrada-h_salida-apellido-empresa-ctrabajo-tipoemp-puesto-id-hrstrabajadas
2008-06-11 ---07:54:00 --- 18:14:00 --- Juan Perez-----20----15---45---20----13002---10:20:00---01:20:00
2008-06-18 ---07:41:00 --- 17:35:00 --- Juan Perez-----20----15---45---20----13002---09:54:00---00:54:00
2008-06-19 ---07:53:00 --- 18:23:00 --- Juan Perez-----20----15---45---20----13002---10:30:00---01:30:00

ose que el empleado id=13002 tuvo horas extras 03:44:00


esta es mi consulta ya me saca las horas trabajo y las hrs extras en php pero no me suma el total de las horas extras, he intentado hacerlo con if dentro de la consulta pero no me sale lo que yo espero

SELECT fecha,h_entrada,h_salida,apellido,empresa,ctrabajo,tipoemp,puesto,id, nombre_archivo, SEC_TO_TIME(TIME_TO_SEC(h_salida) - TIME_TO_SEC(h_entrada))as hrstrabajadas from Resultado_Inc2 where fecha between 'fecha = ".2008-06-11."' and 'fecha = ".2008-06-22."' ORDER BY id,fecha, h_entrada")

Gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:suma de horas

Publicado por Pineapple (10 intervenciones) el 09/07/2008 23:55:44
Puedes escribir el codigo php para darle una revisada, y darte una solución? otra pregunta todo lo quieres resolver desde php?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:suma de horas

Publicado por janet (6 intervenciones) el 10/07/2008 19:59:27
hola gracias por contestar mira lo que sucede esque ya me aparece la suma pero no es la precisa no que se esta sumando en si, sobre si lo tengo que hacer desde php no en realidad no, yo lo quiero hacer desde la consulta porque despues estos datos los tengo que envia a un excel y por consiguiente hay todo va sobre consulta esta es la ultima consulta que realice que me envia la suma pero esta mal no se que estare haciendo mal, creo suponer que me esta sumado sobre una hora las demas pero solo los mete con segundos a la suma y no como hrs bueno eso creo.

SELECT fecha,h_entrada,h_salida,apellido,tipoemp,puesto,id, SEC_TO_TIME(TIME_TO_SEC(h_salida) - TIME_TO_SEC(h_entrada))as hrstrabajadas, IF(SEC_TO_TIME(TIME_TO_SEC(h_salida) - TIME_TO_SEC(h_entrada))>='09:50:00',SEC_TO_TIME(TIME_TO_SEC(h_salida) - TIME_TO_SEC(h_entrada)-'32400'),'0')as hrsextra, sum(IF(SEC_TO_TIME(TIME_TO_SEC(h_salida) - TIME_TO_SEC(h_entrada))>='09:58:00',SEC_TO_TIME(TIME_TO_SEC(h_salida) - TIME_TO_SEC(h_entrada)-'32400'),'0')) as sumahrsextras from Resultado_Inc2 where fecha between 'fecha = ".2008-06-09."' and 'fecha = ".2008-06-22."' group by id ORDER BY id,fecha, h_entrada ;

gracias :-)
bye
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:suma de horas

Publicado por Pineapple (10 intervenciones) el 11/07/2008 02:01:31
Haber amiga, me podrias explicar que quieres que haga el codigo a lo que entiendo quieres sacar las horas extras, pero por ejmplo en una linea haces esto

TIME_TO_SEC(h_salida) - TIME_TO_SEC(h_entrada)-'32400'

Si estas restando 32400 segundos, esto no va entre comillas, pues siguen siendo numeros, mmm ademas de ahi no vi algo raro.. bueno espero tu respuesta...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:suma de horas

Publicado por Janet (6 intervenciones) el 14/07/2008 20:51:11
hola relativamente ya me quedo y sobre esta parte lo que sucede esque le estoy restando 9 hrs que se supone que son 32400 segundos (TIME_TO_SEC(h_salida) - TIME_TO_SEC(h_entrada)-'32400' ) para que me de el resultado y resto esas son mis hrs extras y mas o menos ya me quedo la suma es todo esto, ahora que tengo un problema muy pequeño cuando tiene 09:58:00 se supone que es una 1hr extra ya que trabajo 9 hrs y su hora extra es 58 min puesto que por logica sabes que laboro 1 hr pero no me lo marca como 1hr si no como cero(0)hrs trabajadas, por lo demas ya hace la suma bien

SELECT id as ID,apellido as NOMBRE, empresa AS EMPRESA, ctrabajo as CTRABAJO, tipoemp AS TIPOEMP, puesto AS PUESTO, IF(count(*)=10, count(h_entrada)+4, IF(count(*)=6, count(h_entrada)+1, count(h_entrada))) as DIAS_TRAB, (SUM(LEFT(IF(SEC_TO_TIME(TIME_TO_SEC(h_salida) - TIME_TO_SEC(h_entrada))>='09:55:00', SEC_TO_TIME(TIME_TO_SEC(h_salida) - TIME_TO_SEC(h_entrada)-32400) ,'0'),2)) + left(((sum(SUBSTRING(IF(SEC_TO_TIME(TIME_TO_SEC(h_salida) - TIME_TO_SEC(h_entrada))>='09:55:00', SEC_TO_TIME(TIME_TO_SEC(h_salida) - TIME_TO_SEC(h_entrada)-'32400') ,'0'),4,2))*60)/3600),1)) AS HRS_EXT FROM Resultado_Inc2 where fecha between 'fecha = ".$fecha1."' and 'fecha = ".$fecha2."' and h_entrada > '00:00:00' GROUP BY id ORDER BY id

gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:suma de horas

Publicado por Pineapple (10 intervenciones) el 15/07/2008 18:38:20
Hola Janet,

pues lo que puedes hacer es redondear las horas con SELECT ROUND(x,1); asi te redondea los decimales, si tu hora es .58 te lo pone en .60, o ya sea que tu veas la funcion round y esto talvez lo puedas combinar con un IF, o el IF solo donde le digas ke si es mayor de x minutos sea iwal a 1 hora, me explico, hay muchas formas si batallas nos avisas.

Saludos!!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:suma de horas

Publicado por dolores (1 intervención) el 12/07/2008 22:47:14
quiero saber como se trabaja en mysql y que es y como se maneja el objeto ole
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:suma de horas

Publicado por Pineapple (10 intervenciones) el 14/07/2008 18:39:57
Y ke tiene ke ver kon el tema? digo yo
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar