MySQL pārvērš no vienas laika joslas uz citu

Mysql Parvers No Vienas Laika Joslas Uz Citu



“Laika joslas ir viens no sarežģītajiem jēdzieniem, ar kuriem izstrādātājiem ir jātiek galā. Lai gan relāciju datu bāzu rīku un ieviešanas mērķis ir padarīt tās pieļaujamas, tās var izrādīties sarežģītas un dažkārt izraisīt kļūdas.

Tomēr šajā rakstā mēs apspriedīsim, kā, izmantojot MySQL, varat pārvērst laiku no vienas laika joslas uz citu.







MySQL Convert_Tz() funkcija

Funkcija convert_tz() pakalpojumā MySQL ļauj mums konvertēt no vienas laika joslas uz citu. Funkcijas sintakse ir šāda:



CONVERT_TZ ( dt,no_tz,līdz_tz )


Funkcija ņem konvertējamo datuma un laika vērtību, laika joslu, no kuras vēlaties konvertēt, un konvertēšanu, kurā vēlaties konvertēt.



MySQL ļauj norādīt laika joslas kā nosaukumus vai nobīdes vērtības. Pēc tam funkcija atgriezīs atlasīto Datetime objektu mērķa laika joslā.





1. piemērs

Tālāk ir sniegts piemērs, kas ilustrē, kā pārveidot laika virkni no EST uz EAT, izmantojot laika joslu nobīdes.

izvēlieties
convert_tz ( “2022-08-08 22:22:22” ,
'+00:00' ,
'+03:00' ) laiks1;



Iepriekš redzamajam vaicājuma paraugam ir jāatgriež izvade:



| laiks 1 |
| ------------------- |
| 2022. gads -08-09 01: 22 : 22 |

2. piemērs

Kā minēts, mēs varam norādīt mērķa laika joslu pēc tās nosaukuma. Tomēr tas prasa lejupielādēt un instalēt MySQL laika joslas.

Varat palaist tālāk norādīto komandu, lai ielādētu laika joslas.

$ mysql_tzinfo_to_sql / usr / dalīties / zonas informācija | mysql -in sakne -lpp mysql


Ja izmantojat laika joslas failu, palaidiet komandu:

mysql_tzinfo_to_sql tz_file tz_name | mysql -in sakne -lpp mysql


Lejupielādējiet laika joslas failus zemāk esošajā resursā:

https: // dev.mysql.com / lejupielādes / timezones.html


Ielādēt failu:

mysql -in sakne -lpp mysql < faila nosaukums


Pēc tam varat norādīt mērķa laika joslu ar nosaukumu:

mysql > ATLASĪT CONVERT_TZ ( “2022-10-10 14:34:00” , 'ASV/austrumi' , 'ASV/Centrālā' ) AS laiks ;


Iepriekš norādītajam vaicājumam ir jāatgriež laiks, kas konvertēts mērķa laika joslā, kā:

+---------------------+
| laiks |
+---------------------+
| 2022. gads - 10 - 10 13 : 3. 4 :00 |
+---------------------+
1 rinda iekšā komplekts ( 0.00 sek )

Beigas

Šajā īsajā ziņojumā mēs apspriedām, kā MySQL izmantot funkciju convert_tz, lai pārvērstu laiku no vienas laika joslas uz citu.

Laimīgu kodēšanu!!