sql >> Base de Datos >  >> RDS >> Mysql

Cómo convertir UTC a la hora local en MySQL

A veces, es posible que deba cambiar UTC a la hora local en MySQL. En este artículo, veremos cómo convertir UTC a la hora local en MySQL usando convert_tz función.


Cómo convertir UTC a hora local en MySQL

Puede convertir fácilmente UTC a la hora local en MySQL usando convert_tz función. Esta es la sintaxis de la función convert_tz.

convert_tz(date_value, original_timezone, new_timezone)

En la función anterior, debe especificar el valor de la fecha como una cadena literal, función del sistema o nombre de columna, su zona horaria original, así como su nueva zona horaria.

Aquí hay un ejemplo para convertir el valor de fecha y hora de UTC a la zona horaria local (GMT+10:00). De forma predeterminada, debe especificar las zonas horarias originales (+00:00) y nuevas (+10:00) como diferencias con respecto a UTC.

mysql> SELECT CONVERT_TZ('2018-06-15 12:00:00','+00:00','+10:00');
 +-----------------------------------------------------+
 | CONVERT_TZ('2018-06-15 12:00:00','+00:00','+10:00') |
 +-----------------------------------------------------+
 | 2018-06-15 22:00:00                                 |
 +-----------------------------------------------------+

También puede especificar zonas horarias en lugar de compensaciones. Sin embargo, en este caso, deberá descargar e instalar las zonas horarias de MySQL en su servidor. Aquí hay un ejemplo para convertir EST a la zona horaria de París especificando nombres de zonas horarias en lugar de valores de compensación.

mysql> select convert_tz('2020-09-17 03:00:00','US/Eastern','Europe/Paris');

También puede usar funciones del sistema como now() en convert_tz función para convertir la hora de la fecha actual a otras zonas horarias, como se muestra a continuación.

mysql> select convert_tz(now(),'+00:00','-05:00');
+-------------------------------------+
| convert_tz(now(),'+00:00','-05:00') |
+-------------------------------------+
| 2020-09-17 04:45:07                 |
+-------------------------------------+

Lea también:Cómo agrupar por mes en MySQL

Del mismo modo, también puede convertir columnas de fecha, hora y fecha y hora usando convert_tz. Aquí hay un ejemplo para cambiar la zona horaria de order_date columna en ventas tabla, de UTC a EST

mysql> select convert_tz(order_date,'+00:00','-05:00') from sales;
+------------------------------------------+
| convert_tz(order_date,'+00:00','-05:00') |
+------------------------------------------+
| 2020-05-03 19:00:00                      |
| 2020-05-04 19:00:00                      |
| 2020-05-05 19:00:00                      |
| ...                                      |
| 2020-05-13 19:00:00                      |
+------------------------------------------+

Con suerte, ahora puede cambiar la zona horaria de MySQL en la consulta y convertir los valores de fecha, hora y fecha y hora de una zona horaria a otra.

Ubiq facilita la visualización de datos en minutos y el monitoreo en paneles en tiempo real. ¡Pruébalo hoy!