Hola tengo como 10.000 registros en una base de datos, y en el campo 'hora' quiero sumarle 5 horas a todos los registros, el formato del campo es 00:00:00
lo quiero hacer desde phpmyadmin
alguien me puede ayudar.
saludos
| |||
![]() Hola tengo como 10.000 registros en una base de datos, y en el campo 'hora' quiero sumarle 5 horas a todos los registros, el formato del campo es 00:00:00 lo quiero hacer desde phpmyadmin alguien me puede ayudar. saludos
__________________ _ __|_|__ º(-_-)º |
| ||||
![]() Cita:
Iniciado por flaconovato Bueno yo alguna vez hice esto pero esto seria sobre la BD
Código:
o si no se me ocurre esto pero.... ummm tendris que controlar el cambio de dia, de mes,..., etc.SELECT DATE_ADD("2005-11-17 14:20:59", INTERVAL 5 HOUR); SELECT HOUR('14:21:03')+5; Lo del SELECT es un ejemplo... tu tendiras que utilizar UPDATE... con el campo fecha de tu tabla en la BD Saludos.
__________________ El pueblo que se resigna a tecnologías pasadas, sucumbe en el campo de la ignorancia y se entierra en sus ideales.:arriba: :arriba: |
| |||
en el campo hora solo tengo la hora:minutos:segundos no andubo el HOUR(hora)+5 me puso en cero todos los registros!
__________________ _ __|_|__ º(-_-)º |
| ||||
![]() Mira me puse a cacharriar y le di con este UPDATE hazlo y me cuentas...
Código:
y en cuanto a que te halla dejado los campos en CEROS que pena haz la prueba con un solo registro... y me cuentasUPDATE tabla set campo_hora = ADDTIME(campo_hora, '05:00:00') Saludos
__________________ El pueblo que se resigna a tecnologías pasadas, sucumbe en el campo de la ignorancia y se entierra en sus ideales.:arriba: :arriba: |
| |||
Pero ese campo "hora" de que tipo es? .. es un "varChar"? (de texto en general) o es un campo de fecha standar de Mysql (DATE, DATETIME?) .. Al parecer no es así ... Si no es un campo de fecha standard .. no apliques funciones de fechas de SQL sobre el. Ahora .. para no comenter el mismo error otra vez; esas "hora:minuto:segundo" es una fecha o registro de "tiempo"? Si es un registro de tiempo .. podrías simplificar el proceso guardando ese tiempo como segundos (la mínima unidad o por lo menos que a ti te interese) .. así operar como ahora sumando .. restando .. o haciendo cualquier calculo sobre ese campo sería extremadamente sencillo (en base a segundos). Para solventar el problema que tienes ahora mismo, tendías que hacer lo que te comento más arriba, pasar ese tiempo a segundos, operar con el y volver a obtener las horas que son N segundos .. sus minutos y el resto de segundos que se obtengan ... Un saludo, |
| |||
Ok .. si es "TIME" puedes usar las funciones de fecha de Mysql. Pero insisto una vez más si realmente ahí guardas una HORA (de 24 horas) o pretendes almacenar un "tiempo" (expresado en horas, minutos y segundos). Por lo demás .. la función ADDTIME() que te comentó flaconovato debería funcionarte. Revisa la documentación oficial (en los ejemplos añaden los segundos con x.yyyyyyyy) y cualquier duda .. usa el foro de "Base de datos" (pues es tema lo tuyo integro de SQL). http://dev.mysql.com/doc/refman/5.0/...functions.html Un saludo, |