logo

MySQL CAST() פונקציה

הפונקציה CAST() ב-MySQL משמשת להמרת ערך מסוג נתונים אחד לסוג נתונים אחר שצוין בביטוי. הוא משמש בעיקר עם סעיפי WHERE, HAVING ו-JOIN. פונקציה זו דומה לפונקציה CONVERT() ב MySQL .

להלן סוגי הנתונים שאליהם פונקציה זו פועלת בצורה מושלמת:

סוג מידע תיאורים
תַאֲרִיך הוא ממיר את הערך לסוג נתונים DATE בפורמט 'YYYY-MM-DD'. הוא תומך בטווח של DATE ב-'1000-01-01' עד '9999-12-31'.
תאריך שעה הוא ממיר את הערך לסוג הנתונים DATETIME בפורמט 'YYYY-MM-DD HH:MM:SS'. הוא תומך בטווח שבין '1000-01-01 00:00:00' עד '9999-12-31 23:59:59'.
זְמַן זה ממיר את הערך לסוג נתונים TIME בפורמט 'HH:MM:SS'. הוא תומך בטווח הזמן ב-'-838:59:59' עד '838:59:59'.
לְהַשְׁחִיר הוא ממיר ערך לסוג הנתונים CHAR המכיל את המחרוזת באורך קבוע.
נקודה הוא ממיר ערך לסוג הנתונים DECIMAL המכיל מחרוזת עשרונית.
חתם הוא ממיר ערך ל-SIGNED datatype המכיל את המספר השלם של 64 סיביות חתום.
לא חתום הוא ממיר ערך לסוג הנתונים UNSIGNED המכיל את המספר השלם של 64 סיביות ללא סימן.
בינארי הוא ממיר ערך לסוג הנתונים BINARY המכיל את המחרוזת הבינארית.

תחביר

להלן התחביר של הפונקציה CAST() ב-MySQL:

 CAST(expression AS datatype); 

הסבר פרמטר

תחביר זה מקבל שני פרמטרים, אשר יידונו להלן:

פָּרָמֶטֶר דְרִישָׁה תיאורים
ביטוי נדרש זהו ערך שיומר לסוג נתונים ספציפי אחר.
סוג מידע נדרש זהו ערך או סוג נתונים שבהם יש להמיר את ערך הביטוי.

ערך החזרה

לאחר ההמרה, הוא יחזיר ערך באיזה סוג נתונים נרצה להמיר.

תמיכה בגרסת MySQL

פונקציית CAST יכולה לתמוך בגרסאות MySQL הבאות:

  • MySQL 8.0
  • MySQL 5.7
  • MySQL 5.6
  • MySQL 5.5
  • MySQL 5.1
  • MySQL 5.0
  • MySQL 4.1
  • MySQL 4.0

הבה נבין את הפונקציה MySQL CAST() בעזרת הדוגמאות הבאות. אנו יכולים להשתמש בפונקציית CAST עם המשפט SELECT ישירות.

דוגמה 1

הצהרה זו ממירה את הערך לסוג נתונים DATE.

 SELECT CAST('2018-11-30' AS DATE); 

תְפוּקָה

MySQL CAST() פונקציה

דוגמה 2

הצהרה זו ממירה את הערך לסוג נתונים SIGNED.

 SELECT CAST(3-6 AS SIGNED); 

תְפוּקָה

MySQL CAST() פונקציה

דוגמה 3

הצהרה זו ממירה את הערך לסוג נתונים UNSIGNED.

 SELECT CAST(3-6 AS UNSIGNED); 

תְפוּקָה

MySQL CAST() פונקציה

דוגמה 4

לפעמים יש צורך להמיר את המחרוזת למספר שלם באופן מפורש, השתמש במשפט הבא להמרת הערך ל-INTEGER datatype.

 SELECT (3 + CAST('3' AS SIGNED))/2; 

תְפוּקָה

MySQL CAST() פונקציה

דוגמה 5

ההצהרה הבאה ממירה תחילה ערך של מספר שלם לסוג נתונים של מחרוזת ולאחר מכן מבצעת שרשור עם מחרוזת אחרת שצוינה.

 SELECT CONCAT('CAST Function Example ## ',CAST(5 AS CHAR)); 

תְפוּקָה

MySQL CAST() פונקציה

דוגמה 6

בדוגמה זו, אנו הולכים לראות כיצד פונקציית CAST פועלת עם הטבלה. תחילה ניצור טבלה ' הזמנות ' שמכיל את הנתונים הבאים:

MySQL CAST() פונקציה

בטבלה שלמעלה, אנו יכולים לראות שה- Order_Date הוא בסוג הנתונים DATE. כעת, אם ברצוננו לקבל שם מוצר בין טווחי זמן נבחרים, בצע את ההצהרה למטה. כאן, המחרוזת המילולית הומרה לערך חותמת זמן לפני הערכת התנאי WHERE.

 SELECT Order_ID, Product_Name FROM Orders WHERE Order_Date BETWEEN CAST('2020-02-01' AS DATETIME) AND CAST('2020-02-28' AS DATETIME); 

הצהרה זו תפיק את הפלט הבא:

MySQL CAST() פונקציה