MySQL konverterer fra én tidssone til en annen

Mysql Konverterer Fra En Tidssone Til En Annen



«Tidssoner er et av de komplekse konseptene som utviklere må forholde seg til. Selv om verktøy og implementeringer i relasjonsdatabaser har som mål å gjøre dem tolerable, 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 å bruke 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 dato- og klokkeslettverdien som skal konverteres, tidssonen du ønsker å konvertere fra, og konverteren du vil konvertere til.



MySQL lar deg spesifisere tidssonene som navn eller offset-verdier. Funksjonen vil da returnere det valgte Datetime-objektet i måltidssonen.





Eksempel 1

Nedenfor er et eksempel som illustrerer hvordan du konverterer en tidsstreng fra EST til EAT  ved å bruke tidssoneforskyvningene.

å velge
konverter_tz ( '2022-08-08 22:22:22' ,
'+00:00' ,
'+03:00' ) som tid1;



Eksempelspørringen ovenfor skal returnere en utdata:



| tid 1 |
| ------------------ |
| 2022 -08-09 01: 22 : 22 |

Eksempel 2

Som nevnt kan vi spesifisere måltidssonen 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 / dele / soneinfo | mysql -i rot -s mysql


Hvis du bruker en tidssonefil, kjør kommandoen:

mysql_tzinfo_to_sql tz_file tz_name | mysql -i rot -s mysql


Last ned tidssonefilene i ressursen nedenfor:

https: // dev.mysql.com / nedlastinger / timezones.html


Last inn filen:

mysql -i rot -s mysql < filnavn


Du kan deretter spesifisere måltidssonen med navnet:

mysql > VELG CONVERT_TZ ( '2022-10-10 14:34:00' , 'US/Østlig' , 'US/Central' ) SOM tid ;


Spørringen ovenfor skal returnere tiden konvertert til måltidssonen som:

+----------------------------+
| tid |
+----------------------------+
| 2022 - 10 - 10 1. 3 : 3. 4 :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.

Lykke til med koding!!