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

Sådan konverteres UTC til lokal tid i MySQL

Nogle gange skal du muligvis ændre UTC til lokal tid i MySQL. I denne artikel vil vi se på, hvordan man konverterer UTC til lokal tid i MySQL ved hjælp af convert_tz funktion.


Sådan konverterer du UTC til lokal tid i MySQL

Du kan nemt konvertere UTC til lokal tid i MySQL ved hjælp af convert_tz fungere. Her er syntaksen for convert_tz-funktionen.

convert_tz(date_value, original_timezone, new_timezone)

I ovenstående funktion skal du angive datoværdi som en bogstavelig streng, systemfunktion eller kolonnenavn, dens oprindelige tidszone, såvel som dens nye tidszone.

Her er et eksempel på at konvertere dato-tidsværdi fra UTC til lokal tidszone (GMT+10:00). Som standard skal du angive originale (+00:00) og nye tidszoner (+10:00) som forskydninger fra 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                                 |
 +-----------------------------------------------------+

Du kan også angive tidszoner i stedet for forskydninger. Men i dette tilfælde skal du downloade og installere MySQL-tidszoner på din server. Her er et eksempel på at konvertere EST til Paris-tidszone ved at angive tidszonenavne i stedet for offset-værdier.

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

Du kan også bruge systemfunktioner som now() i convert_tz funktion til at konvertere aktuel dato og klokkeslæt til andre tidszoner, som vist nedenfor.

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

Læs også:Sådan grupperer du efter måned i MySQL

På samme måde kan du også konvertere dato, tid, dato og klokkeslæt kolonner ved hjælp af convert_tz. Her er et eksempel på ændring af tidszone for order_date kolonne i salg tabel, fra UTC til 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                      |
+------------------------------------------+

Forhåbentlig kan du nu ændre MySQL-tidszone i forespørgslen og konvertere dato, klokkeslæt, datetime-værdier fra en tidszone til en anden.

Ubiq gør det nemt at visualisere data på få minutter og overvåge i dashboards i realtid. Prøv det i dag!

  1. Konverter MySQL-skema til Github Wiki?

  2. SQL-datatyper:5 værste valg, du skal stoppe i dag

  3. Annoncering af ClusterControl 1.7.3:Forbedret support PostgreSQL og nye cloud-implementeringsmuligheder

  4. Skift af Django-projekt fra sqlite3-backend til postgresql mislykkes ved indlæsning af datadump