Con respecto a la funcion SUM que me podrian decir al respecto al momento de mostrar los total de las cantidades en un campo temporal...
es verdad o es falso que esta funcion no trabaja bien con valores temporales?, por lo que he leído en varios sitios menciona que lo convierte a temporal a numeros y se tiene que volver a convertir en un valor temporal, necesito saber si es asi. Gracias.
entre Desarrolladores
Recibe ayuda de expertos
Registrate y pregunta
Es gratis y fácil
Recibe respuestas
Respuestas, votos y comentarios
Vota y selecciona respuestas
Recibe puntos, vota y da la solución
Pregunta
Utilizar la funcion SUM y mostrar en un campo temporal los resultados en MySQL
- preguntó
- Software
- 496 Vistas
- 1 Respuestas
- abierta
1 Respuesta
Hola @Cristi_C
tal vez con algún error de sintaxis por escribirlo acá, la query que proyecta los datos que necesitás es:
SELECT RA.IDREGISTROASISTENCIA,T.CLAVETRABAJADOR, DATEFORMAT(RA.REGISTROHORAENTRADA,'%H:%i:%s'), DATEFORMAT(RA.REGISTROHORASALIDA,'%H:%i:%s'), TIMEDIFF(RA.REGISTROHORASALIDA,RA.REGISTROHORAENTRADA) AS SUBTOTAL,
( SELECT SUM(TIMEDIFF(REGISTROASISTENCIA.REGISTROHORASALIDA,REGISTROASISTENCIA.REGISTROHORAENTRADA)
FROM REGISTROASISTENCIA
WHERE RA.IDREGISTROASISTENCIA=REGISTROASISTENCIA.IDREGISTROASISTENCIA
AND REGISTROASISTENCIA.IDREGISTROASISTENCIA <= RA.IDREGISTROASISTENCIA
) AS TOTAL_ACUMULADO
FROM REGISTROASISTENCIA RA,TRABAJADOR T
WHERE T.CLAVETRABAJADOR=1489;
Es decir, el total acumulado es una subquery que suma las diferencias de todas las horas desde el registro actual para atrás; el GROUP BY
queda solo adentro de la subquery. El uso de alias es para desambiguar en la query si el campo es de la subquery o no.
Lo que tienen de malo este tipo de querys es que muestran resultados legibles solo si se consulta por un solo trabajador, ya que si hay registros de varios trabajadores, el TOTAL_ACUMULADO deja de tener sentido.
Saludos cordiales!
Por favor, accede o regístrate para añadir un comentario.
Por favor, accede o regístrate para responder a esta pregunta.
En el blog
-
- 406871
- 1
- Jul 5, 2015
Sin Respuesta
-
- 99
- 0
- Mar 19
-
- 65
- 1
- Feb 26
-
- 155
- 0
- Ene 30
-
- 611
- 0
- Nov 7, 2023
-
- 260
- 0
- Sep 19, 2023
-
- 286
- 0
- Ago 21, 2023
-
- 364
- 0
- May 14, 2023
-
- 324
- 0
- Abr 21, 2023
- ver todas
Preguntas relacionadas
- como mostrar en un campo temporal el resultado de las diferencias de tiempo en un if en mysql
- Ayuda con la funcion sum en Mysql
- funcion de control de flujo utilizar mas de un operador if en mysql
- Campo temporal en tabla MYSQL
- Tabla dinamica en Electron node js con mysql pero solo logro mostrar los resultados por console.
Actividad Reciente
Santiago2610 comentó hace 6 días
Acualizar ChoiceField en djangoSantiago2610 preguntó Mar 19
Acualizar ChoiceField en djangogonzalss preguntó Feb 26
Script /boot/ scrapingParkJo preguntó Ene 30
No me deja instalar Oracleelporfirio respondió Ene 10
Actualizar la imagen con los datos devuelto en un …ovedg preguntó Dic 31, 2023
Actualizar la imagen con los datos devuelto en un …Ehdez preguntó Nov 7, 2023
Necesito en wordpress un pluging que me calcule la…pedrourday preguntó Sep 19, 2023
Alternativas a ThreeJS y BabylonJS?pedrourday preguntó Ago 21, 2023
¿Que tecnologias y lenguajes me recomiendan?Fabio respondió Jul 11, 2023
plugin de efecto circular 3d en imagenes
Ultimas Preguntas
Preguntas relacionadas
- como mostrar en un campo temporal el resultado de las diferencias de tiempo en un if en mysql
- Ayuda con la funcion sum en Mysql
- funcion de control de flujo utilizar mas de un operador if en mysql
- Campo temporal en tabla MYSQL
- Tabla dinamica en Electron node js con mysql pero solo logro mostrar los resultados por console.
Usuarios Top
- Leonardo-Tadei
- 227320 Puntos
- Peter
- 150460 Puntos
- white
- 75880 Puntos
- carlossevi
- 63580 Puntos
- magarzon
- 30650 Puntos
- pregunton
- 20400 Puntos
Todos los Usuarios Usuarios Nuevos
...