Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Mysql »

Ayuda ......

Estas en el tema de Ayuda ...... en el foro de Mysql en Foros del Web. Hola estoy iniciando con bases de datos y tengo un pequeño problema estoy trabajando con operaciones de hora y lo que pasa es que me ...
  #1 (permalink)  
Antiguo 03/05/2010, 07:43
 
Fecha de Ingreso: abril-2010
Mensajes: 25
Antigüedad: 14 años
Puntos: 0
Ayuda ......

Hola estoy iniciando con bases de datos y tengo un pequeño problema
estoy trabajando con operaciones de hora y lo que pasa es que me muestra algunos registros y otros los deja en null y muestra un mensaje que se llama "truncated incorrect value time value '41600'" esto solo aparece en algunos registros esta es la sentencia que estoy usando


no se si haya algo mal o algoa asi agradezco su ayuda

Última edición por nanobreaker; 09/06/2010 a las 11:27
  #2 (permalink)  
Antiguo 03/05/2010, 08:20
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 4 meses
Puntos: 2658
Respuesta: Ayuda ......

Ten en cuenta:

- SUM() no está definido para TIME o DATETIME.
- Si quieres calcular diferenciales de tiempo para sumarlos, conviértelos a segundos. Te ahorraras problemas.
- Cuando hayas obtenido los valores de tiempo en segundos, entonces vuelve a generar el tipo de dato como TIME().
- Ten en cuenta que un timo de dato TIME sólo puede representar hasta 870 horas. SI superas esa cifra deberás realizar la conversión separando los valores de días y horas.

Postea la estructura de la tabla, para poder ver mejor la conversión.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #3 (permalink)  
Antiguo 04/05/2010, 10:07
 
Fecha de Ingreso: abril-2010
Mensajes: 25
Antigüedad: 14 años
Puntos: 0
Respuesta: Ayuda ......

Gracias por su respuesta pero si el rango que estoy calculando es inferior a eso tambien aplicaria eso o si cono alguna manera mas simple se lo agradeceria
  #4 (permalink)  
Antiguo 04/05/2010, 10:16
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 4 meses
Puntos: 2658
Respuesta: Ayuda ......

Sólo te hice la advertencia para el caso de que estuvieses manejando valores muy grandes. Caso contrario (el que haces), no deberías tener problemas al usar la función adecauda:
Código MySQL:
Ver original
  1.     identificador_empleado,
  2.     nombre,
  3.     real_trabajado,
  4.     SEC_TO_TIME(SUM(TIME_TO_SEC(real_trabajado))),
  5.     IF(SUM(TIME_TO_SEC(real_trabajado)) IS NULL, 'NO VALE', SEC_TO_TIME(SUM(TIME_TO_SEC(real_trabajado))))
  6. FROM calculo_horas
  7.     fecha_entrada between '2010-04-01' and '2010-04-30'
  8.     AND
  9.     identificador_empleado=568912537
  10. GROUP BY nombre
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #5 (permalink)  
Antiguo 05/05/2010, 15:16
 
Fecha de Ingreso: abril-2010
Mensajes: 25
Antigüedad: 14 años
Puntos: 0
Respuesta: Ayuda ......

gnzsoloyo gracias por su ayuda era justo lo que necesitaba se lo agradezco mucho
  #6 (permalink)  
Antiguo 05/05/2010, 18:37
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 4 meses
Puntos: 2658
Respuesta: Ayuda ......

__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #7 (permalink)  
Antiguo 11/06/2010, 20:06
 
Fecha de Ingreso: abril-2010
Mensajes: 25
Antigüedad: 14 años
Puntos: 0
Respuesta: Ayuda ......

gracias por el codigo si me funciono pero no se si puedas eliminar la sentencia por que lo que sucede es que como ese codigo es para una empresa depronto piensan que es plagio y ponen problema por los derechos de autor en verdad es para evitar problemas usted sabe gracias
  #8 (permalink)  
Antiguo 11/06/2010, 22:13
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 4 meses
Puntos: 2658
Respuesta: Ayuda ......

No se puede patentar una consulta.
Se patentan programas, algorimos (hasta cierto punto) y algunas veces métodos... pero no existen derechos de autor registrables sobre consultas de SQL.
No hay derechos de autor sobre ellas porque para hacerlo deberían demostrar que no tienes una base de datos que cumpla con la estructura que permita usar esa sentencia, y que hayas creado tú mismo.
Sería simplemente ridículo.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #9 (permalink)  
Antiguo 14/06/2010, 18:45
 
Fecha de Ingreso: abril-2010
Mensajes: 25
Antigüedad: 14 años
Puntos: 0
Sonrisa Respuesta: Ayuda ......

gnzsoloyo gracias por resolver mis dudas es que lo que sucede es que pense o bueno pienso que por mencionar unos campos de una tabla de la base de datos podrian ponerme problemas por derechos de autor

de igual forma gracias

Última edición por nanobreaker; 14/06/2010 a las 19:00 Razón: mala redaccion

Etiquetas: Ninguno
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 07:36.