ฟังก์ชัน MySQL CAST

Fangkchan Mysql Cast



วัตถุประสงค์: ค้นพบวิธีแปลงค่าจากประเภทข้อมูลหนึ่งเป็นประเภทข้อมูลอื่นที่รองรับโดยใช้ฟังก์ชัน CAST() ใน MySQL

ฟังก์ชัน MySQL CAST()

ฟังก์ชัน CAST เป็นไปตามไวยากรณ์อย่างง่าย ดังที่แสดงด้านล่าง:

หล่อ ( ด่วน เช่น พิมพ์ [ อาร์เรย์ ] ) ;







ฟังก์ชันยอมรับนิพจน์และชนิดข้อมูลเป้าหมายเป็นพารามิเตอร์ จากนั้นจะแปลงค่าเป็นประเภทข้อมูลเป้าหมายที่ระบุและส่งกลับนิพจน์



ฟังก์ชันสามารถแปลงนิพจน์อินพุตเป็นประเภทข้อมูลที่รองรับได้หลากหลาย เช่น BINARY, CHAR, DATE, DATETIME, DECIMAL, DOUBLE, FLOAT, NCHAR, UNSIGNED, SIGNED, REAL เป็นต้น



ตัวอย่างที่ 1: ฟังก์ชัน MySQL CAST()

ให้เราดูตัวอย่างการใช้ฟังก์ชัน cast ใน MySQL





เลือก หล่อ ( 100 เช่น ถ่าน ) เช่น ออก_;

ตัวอย่างก่อนหน้านี้ใช้ฟังก์ชัน CAST() เพื่อแปลงประเภท int เป็นสตริง



เอาท์พุต:

ออก_ |
----+
100 |

ตัวอย่างที่ 2

เรายังสามารถใช้ฟังก์ชัน CAST() เพื่อแปลงค่าเป็นประเภทวันที่ ดังตัวอย่างต่อไปนี้:

เลือก หล่อ ( '2022-10-10' เช่น วันที่ ) เช่น ออก_;

ค่าที่ได้แสดงไว้ด้านล่าง:

ออก_ |
----------+
2022 - 10 - 10 |

โปรดทราบว่าค่าต้องเป็นไปตามรูปแบบที่ถูกต้องและสามารถแปลงเป็นประเภทที่ระบุได้ ตัวอย่างเช่น การพยายามแปลงค่าวันที่ไม่ถูกต้องเป็นฟังก์ชัน cast จะส่งกลับค่า NULL

ตัวอย่างแสดงไว้ด้านล่าง:

เลือก หล่อ ( '10-10-2565' เช่น วันที่ ) เช่น ออก_;

ในกรณีนี้ รูปแบบก่อนหน้าเป็นไปตามรูปแบบวันที่ไม่ถูกต้อง MySQL จะส่งกลับข้อผิดพลาดที่แสดงด้านล่าง:

ค่าวันที่และเวลาไม่ถูกต้อง: '10-10-2565'

ในบางกรณี MySQL จะส่งคืนค่า NULL

ตัวอย่างที่ 3: แปลงสตริงเป็น Int

เรายังสามารถแปลงประเภทสตริงที่กำหนดให้เป็น int ได้ด้วย ดังตัวอย่างต่อไปนี้:

เลือก หล่อ ( '100' เช่น ทศนิยม ) เช่น ออก_;

เอาท์พุต:

ออก_ |
----+
100 |

ตัวอย่างที่ 4: แปลงสตริงเป็นลอย

เลือก หล่อ ( '100.2' เช่น ลอย ) เช่น ออก_;

เอาท์พุต:

ออก_ |
-----+
100.2 |

ตัวอย่างที่ 5: การใช้ฟังก์ชัน CAST() บนคอลัมน์ตาราง

เรายังสามารถใช้ฟังก์ชัน CAST() กับคอลัมน์ตารางได้ด้วย ตัวอย่างเช่น สมมติว่าเรามีตารางที่แสดงด้านล่าง:

เราสามารถใช้ฟังก์ชัน CONCAT() และ CAST() เพื่อแปลงค่าของคอลัมน์ installation_version ดังที่แสดงในแบบสอบถามด้านล่าง:

เลือก เชื่อม ( ชื่อเซิร์ฟเวอร์, ' - ' , หล่อ ( install_version เช่น ถ่าน ) จาก stack_mapping sm;

ตารางผลลัพธ์:

เชื่อม ( ชื่อเซิร์ฟเวอร์, ' - ' , install_version ) |
--------------------------------------------+
เซิร์ฟเวอร์ SQL - 15.0 |
การค้นหาแบบยืดหยุ่น - 8.4 |
เรดดิส - 6.0 |
PostgreSQL - 14.5 |
มายเอสคิวแอล - 8.0 |

บทสรุป

บทช่วยสอนนี้สอนพื้นฐานการทำงานกับฟังก์ชัน CAST() เพื่อแปลงค่าจากประเภทหนึ่งไปเป็นอีกประเภทหนึ่ง มีตัวอย่างมากมายเพื่อเน้นการแปลง String เป็น Int และ String เป็น Float