ฟังก์ชันสำหรับจัดรูปแบบข้อความ (Title Case)
MySQL ไม่มีฟังก์ชัน PROPER() หรือ INITCAP() เหมือนฐานข้อมูลอื่นๆ แต่สามารถสร้างได้โดยรวมฟังก์ชัน UPPER(), LOWER(), LEFT(), SUBSTRING() และ REPLACE()
สูตรการแปลง
UPDATE table_name
SET column_name = REPLACE(
CONCAT(UPPER(LEFT(column_name, 1)), LOWER(SUBSTRING(column_name, 2))),
' , ', ', '
);
ตัวอย่างการใช้งาน
CREATE TABLE DemoTable2017 (Name TEXT);
INSERT INTO DemoTable2017 VALUES
('JOHN SMITH,MYSQL'),
('DAVID MILLER,MONGODB'),
('CHRIS BROWN,JAVA');
UPDATE DemoTable2017
SET Name = REPLACE(
CONCAT(UPPER(LEFT(Name, 1)), LOWER(SUBSTRING(Name, 2))),
' , ', ', '
);
ผลลัพธ์
| Name |
|---|
| John smith,mysql |
| David miller,mongodb |
| Chris brown,java |
หมายเหตุ: สูตรนี้ทำให้ตัวอักษรตัวแรกของทั้งสตริงเป็นตัวใหญ่ ส่วนที่เหลือเป็นตัวเล็ก หากต้องการให้ทุกคำขึ้นต้นด้วยตัวใหญ่ (True Title Case) จะต้องใช้ฟังก์ชันที่ซับซ้อนกว่านี้หรือจัดการในระดับแอปพลิเคชัน