“Timezones er et av de komplekse konseptene som utviklere må takle. Selv om verktøy og implementeringer i relasjonsdatabaser tar sikte på å gjøre dem tålelige, kan de vise seg å være utfordrende og noen ganger føre til feil.
I denne artikkelen vil vi imidlertid diskutere hvordan du kan konvertere en tid fra en tidssone til en annen ved hjelp av mysql.”
Mysql convert_tz () funksjon
Convert_tz () -funksjonen i MySQL gjør det mulig for oss å konvertere fra en tidssone til en annen. Funksjonssyntaksen er som vist:
Convert_tz (dt, from_tz, to_tz)
Funksjonen tar datetime -verdien som skal konverteres, tidssonen du ønsker å konvertere fra, og konverteringen til hvilken du vil konvertere.
MySQL lar deg spesifisere tidssonene som navn eller forskyvningsverdier. Funksjonen vil deretter returnere det valgte DateTime -objektet i Target TimeZone.
Eksempel 1
Nedenfor er et eksempel som illustrerer hvordan du konverterer en tidsstreng fra EST til å spise ved hjelp av tidssoneforskyvninger.
plukke ut
Convert_tz ('2022-08-08 22:22:22',
'+00: 00',
'+03: 00') som tid1;
Eksemplet spørring ovenfor skal returnere en utdata:
| tid1 |
| ------------------- |
| 2022-08-09 01: 22: 22 |
Eksempel 2
Som nevnt kan vi spesifisere måletidssonen med navnet. Dette krever imidlertid at du laster ned og installerer MySQL TimeZones.
Du kan kjøre kommandoen nedenfor for å laste tidssonene.
$ mysql_tzinfo_to_sql/usr/share/soneinfo | mysql -u root -p mysql
Hvis du bruker en TimeZone -fil, kjør kommandoen:
mysql_tzinfo_to_sql tz_file tz_name | mysql -u root -p mysql
Last ned tidssonefilene i ressursen nedenfor:
https: // dev.mysql.com/nedlastinger/tidssoner.html
Last inn filen:
mysql -u root -p mysql < file_name
Du kan deretter spesifisere måletidssonen med navnet:
MySQL> Select Convert_tz ('2022-10-10 14:34:00', 'US/Eastern', 'Us/Central') som tid;
Spørringen ovenfor skal returnere tiden som er konvertert til måletidssonen som:
+---------------------+
| tid |
+---------------------+
| 2022-10-10 13:34:00 |
+---------------------+
1 rad i sett (0.00 sek)
Slutt
I dette korte innlegget diskuterte vi hvordan du bruker Convert_tz -funksjonen i MySQL for å konvertere tid fra en tidssone til en annen.
Glad koding!!