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

Zonas Horarias en MySQL

Estas en el tema de Zonas Horarias en MySQL en el foro de Mysql en Foros del Web. Hola a todos, Tengo una tabla con fechas almacenadas con este escenario: Código PHP: ID  |  Fechas  ( Hora Argentina UTC - 03 : 00 )   ...
  #1 (permalink)  
Antiguo 09/03/2012, 10:28
Avatar de zaccarelliasbun  
Fecha de Ingreso: mayo-2009
Ubicación: Bolivia
Mensajes: 70
Antigüedad: 14 años, 11 meses
Puntos: 1
Pregunta Zonas Horarias en MySQL

Hola a todos,

Tengo una tabla con fechas almacenadas con este escenario:

Código PHP:
ID Fechas (Hora Argentina UTC-03:00)
 
1  |  30-01-2012 15:30:00  
 2  
|  30-02-2012 15:30:00 
Las fechas almacenadas están en hora Argentina y necesito hacerle un sql que me convierta las fechas a zonas horarias distintas, el resultado que espero es:

Código PHP:
Para Bolivia (UTC-04:00)
 
1  |  30-01-2012 14:30:00  
 2  
|  30-02-2012 14:30:00 

Para Peru 
(UTC-05:00)
 
1  |  30-01-2012 13:30:00  
 2  
|  30-02-2012 13:30:00 
Seria utilizar algo de cambio de zona horaria GMT para los querys.

gracias por su ayuda
  #2 (permalink)  
Antiguo 09/03/2012, 12:42
Colaborador
 
Fecha de Ingreso: enero-2007
Ubicación: México
Mensajes: 2.097
Antigüedad: 17 años, 3 meses
Puntos: 447
Respuesta: Zonas Horarias en MySQL

Hola zaccarelliasbun:

En primer lugar, espero que el que hayas puesto esta fecha (30-02-2012) sea un problema de copiar-pegar, pues febrero 28 o 29 dias .

Segundo, no dices de qué tipo es tu campo, puedo suponer que se trata de un datetime, mucho ojo el formato estándar para manejo de fechas en la mayoría de los DBMS es el ANSI (yyyy-mm-dd HH24:MI:SS), para que lo consideres.

En cuanto a tu problema, creo que te sirve la función CONVERT_TZ().

Del manual de MySQL

Cita:
CONVERT_TZ() convierte un valor datetime dt de la zona horaria dada por from_tz a la zona horaria dada por to_tz y retorna el valor resultante. Las zonas horarias pueden especificarse como se describe en Sección 5.9.8, “Soporte de zonas horarias en el servidor MySQL”. Esta función retorna NULL si los argumentos son inválidos.

Si el valor se sale del rango soportado por el tipo TIMESTAMP al convertirse de from_tz a UTC, no se realiza ninguna conversión.
http://dev.mysql.com/doc/refman/5.0/...functions.html

Checa el ejemplo por si tienes problemas para entender cómo se usa.

Saludos
Leo.
  #3 (permalink)  
Antiguo 09/03/2012, 14:13
Avatar de zaccarelliasbun  
Fecha de Ingreso: mayo-2009
Ubicación: Bolivia
Mensajes: 70
Antigüedad: 14 años, 11 meses
Puntos: 1
Respuesta: Zonas Horarias en MySQL

Hola leonardo_josue

jeje perdón por lo del 30-02 fue error de copiar y pegar como tu dices.

Mi campo tiene formato datetime y me parece que la funcion CONVERT_TZ() es la mas apropiada a mi problema, gracias leo voy a darle un vistazo y te aviso.

Saludos.

Etiquetas: query, sql, tabla, zonas
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 06:26.