Mysql
 sql >> Database >  >> RDS >> Mysql

Come convertire UTC in ora locale in MySQL

A volte potrebbe essere necessario modificare l'ora UTC nell'ora locale in MySQL. In questo articolo, vedremo come convertire l'ora UTC nell'ora locale in MySQL usando convert_tz funzione.


Come convertire UTC in ora locale in MySQL

Puoi convertire facilmente l'ora UTC nell'ora locale in MySQL usando convert_tz funzione. Ecco la sintassi per la funzione convert_tz.

convert_tz(date_value, original_timezone, new_timezone)

Nella funzione precedente è necessario specificare il valore della data come stringa letterale, funzione di sistema o nome di colonna, il fuso orario originale e il nuovo fuso orario.

Ecco un esempio per convertire il valore della data e dell'ora da UTC a fuso orario locale (GMT+10:00). Per impostazione predefinita, devi specificare il fuso orario originale (+00:00) e il nuovo fuso orario (+10:00) come scostamenti dall'ora 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                                 |
 +-----------------------------------------------------+

Puoi anche specificare i fusi orari invece degli offset. Tuttavia, in questo caso, dovrai scaricare e installare i fusi orari MySQL sul tuo server. Ecco un esempio per convertire EST in fuso orario di Parigi specificando i nomi dei fusi orari invece dei valori di offset.

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

Puoi anche utilizzare funzioni di sistema come now() in convert_tz funzione per convertire la data e l'ora corrente in altri fusi orari, come mostrato di seguito.

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

Leggi anche:Come raggruppare per mese in MySQL

Allo stesso modo, puoi anche convertire le colonne di data, ora, data e ora usando convert_tz. Ecco un esempio per modificare il fuso orario di data_ordine colonna in vendite tabella, da 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                      |
+------------------------------------------+

Si spera che ora sia possibile modificare il fuso orario MySQL nella query e convertire i valori di data, ora e data e ora da un fuso orario all'altro.

Ubiq semplifica la visualizzazione dei dati in pochi minuti e il monitoraggio in dashboard in tempo reale. Provalo oggi!