'אזורי זמן הם אחד המושגים המורכבים שאיתם מפתחים צריכים להתמודד. למרות שכלים והטמעות במסדי נתונים יחסיים שואפים להפוך אותם נסבלים, הם יכולים להוכיח מאתגרים ולפעמים להוביל לטעויות.
במאמר זה, לעומת זאת, נדון כיצד ניתן להמיר זמן מאזור זמן אחד לאחר באמצעות MySQL.'
MySQL Convert_Tz() פונקציה
הפונקציה convert_tz() ב-MySQL מאפשרת לנו להמיר מאזור זמן אחד לאחר. תחביר הפונקציה הוא כפי שמוצג:
CONVERT_TZ ( dt,from_tz,to_tz )
הפונקציה לוקחת את ערך התאריך והשעה להמרה, את אזור הזמן שממנו ברצונך להמיר ואת ההמרה שאליו ברצונך להמיר.
MySQL מאפשר לך לציין את אזורי הזמן בתור שמות או ערכי היסט. לאחר מכן הפונקציה תחזיר את האובייקט שנבחר Datetime באזור הזמן היעד.
דוגמה 1
להלן דוגמה הממחישה כיצד להמיר מחרוזת זמן מ-EST ל-EAT באמצעות קיזוז אזור הזמן.
בחרconvert_tz ( '2022-08-08 22:22:22' ,
'+00:00' ,
'+03:00' ) כפי ש זמן1;
השאילתה לדוגמה למעלה צריכה להחזיר פלט:
| זמן 1 |
| ------------------- |
| 2022 -08-09 01: 22 : 22 |
דוגמה 2
כאמור, אנו יכולים לציין את אזור הזמן היעד לפי שמו. עם זאת, זה מחייב אותך להוריד ולהתקין את אזורי הזמן של MySQL.
אתה יכול להפעיל את הפקודה למטה כדי לטעון את אזורי הזמן.
$ mysql_tzinfo_to_sql / usr / לַחֲלוֹק / zoneinfo | mysql -ב שורש -עמ' mysql
אם אתה משתמש בקובץ אזור זמן, הפעל את הפקודה:
הורד את קבצי אזור הזמן במשאב למטה:
טען את הקובץ:
לאחר מכן תוכל לציין את אזור הזמן היעד עם השם:
השאילתה למעלה אמורה להחזיר את הזמן שהומר לאזור זמן היעד כ:
| זְמַן |
+----------------------------+
| 2022 - 10 - 10 13 : 3. 4 :00 |
+----------------------------+
1 שׁוּרָה ב מַעֲרֶכֶת ( 0.00 שניות )
סוֹף
בפוסט הקצר הזה, דנו כיצד להשתמש בפונקציה convert_tz ב-MySQL כדי להמיר זמן מאזור זמן אחד לאחר.
קידוד שמח!!