“Las zonas horarias son uno de los conceptos complejos con los que tienen que lidiar los desarrolladores. Aunque las herramientas y las implementaciones en las bases de datos relacionales tienen como objetivo hacerlas tolerables, pueden resultar desafiantes y, a veces, generar errores.
En este artículo, sin embargo, discutiremos cómo puede convertir una hora de una zona horaria a otra utilizando MySQL.
Función MySQL Convert_Tz()
La función convert_tz() en MySQL nos permite convertir de una zona horaria a otra. La sintaxis de la función es como se muestra:
CONVERTIR_TZ ( dt,desde_tz,a_tz )
La función toma el valor de fecha y hora que se va a convertir, la zona horaria desde la que desea convertir y la conversión a la que desea convertir.
MySQL le permite especificar las zonas horarias como nombres o valores de compensación. A continuación, la función devolverá el objeto de fecha y hora seleccionado en la zona horaria de destino.
Ejemplo 1
A continuación se muestra un ejemplo que ilustra cómo convertir una cadena de tiempo de EST a EAT utilizando las compensaciones de zona horaria.
Seleccioneconvertir_tz ( '2022-08-08 22:22:22' ,
'+00:00' ,
'+03:00' ) como tiempo1;
La consulta de ejemplo anterior debería devolver una salida:
| tiempo1 |
| ------------------- |
| 2022 -08-09 01: 22 : 22 |
Ejemplo 2
Como se mencionó, podemos especificar la zona horaria de destino por su nombre. Sin embargo, esto requiere que descargue e instale MySQL Timezones.
Puede ejecutar el siguiente comando para cargar las zonas horarias.
$ mysql_tzinfo_to_sql / usuario / Cuota / zonainfo | mysql -en raíz -pags mysql
Si está utilizando un archivo de zona horaria, ejecute el comando:
Descargue los archivos de zona horaria en el siguiente recurso:
Cargue el archivo:
A continuación, puede especificar la zona horaria de destino con el nombre:
La consulta anterior debería devolver la hora convertida a la zona horaria de destino como:
| tiempo |
+---------------------+
| 2022 - 10 - 10 13 : 34 :00 |
+---------------------+
1 fila en establecer ( 0.00 segundo )
Final
En esta breve publicación, discutimos cómo usar la función convert_tz en MySQL para convertir el tiempo de una zona horaria a otra.
¡Feliz codificación!