sql >> Database >  >> RDS >> Mysql

Hoe datetime naar UTC te converteren in MySQL

Soms moet u de tijdzone wijzigen in UTC of de tijdzone instellen op UTC. In dit artikel zullen we bekijken hoe je datetime naar UTC kunt converteren in MySQL.


Datetime converteren naar UTC in MySQL

Hier zijn de stappen om datetime naar UTC in MySQL te converteren. Je kunt datetime gemakkelijk veranderen in UTC met convert_tz functie.

Hier is de syntaxis voor convert_tz

convert_tz(date_value, original_timezone, new_timezone)

In de bovenstaande functie kunt u de datumwaarde specificeren als een letterlijke tekenreeks, systeemfunctie of kolomnaam, de oorspronkelijke tijdzone en de nieuwe tijdzone. De originele en nieuwe tijdzones kunnen worden gespecificeerd met behulp van offsets of tijdzonenamen.

Hier is een voorbeeld om de datum-tijdwaarde van de lokale tijdzone (GMT+10:00) naar UTC (+00:00) te converteren. Standaard moet u originele (+10:00) en nieuwe tijdzones (+00:00) opgeven als verschuivingen van UTC.

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

Op dezelfde manier kunt u ook datum-, tijd- en datumtijdkolommen converteren met convert_tz. Hier is een voorbeeld om de tijdzone van order_date te wijzigen kolom in verkoop tabel, van UTC naar EST

mysql> select convert_tz(order_date,'+10:00','+00:00') from sales;
+------------------------------------------+
| convert_tz(order_date,'+10:00','+00: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                      |
+------------------------------------------+

U kunt ook tijdzones specificeren in plaats van offsets. In dit geval moet u echter MySQL-tijdzones downloaden en installeren op uw server. Hier is een voorbeeld om EST naar UTC-tijdzone te converteren door tijdzonenamen op te geven in plaats van offsetwaarden.

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

Hopelijk kun je datetime nu converteren naar UTC in MySQL.

Ubiq maakt het gemakkelijk om gegevens binnen enkele minuten te visualiseren en in realtime dashboards te monitoren. Probeer het vandaag nog!

  1. Voorwaardelijke WHERE-clausule met CASE-instructie in Oracle

  2. Alleen een rij invoegen als deze er nog niet is

  3. De Aria Storage Engine gebruiken met MariaDB Server

  4. Fout bij het installeren van mysql2:kan de native extensie van de gem niet bouwen