การสร้าง Initials จากชื่อเต็ม
ใช้ LEFT() และ SUBSTRING_INDEX() เพื่อดึงตัวอักษรแรกของชื่อและนามสกุล
สูตร
CONCAT(
LEFT(full_name, 1),
LEFT(SUBSTRING_INDEX(full_name, ' ', -1), 1)
)
ตัวอย่าง
CREATE TABLE demo13 (
full_name VARCHAR(100),
short_name VARCHAR(20)
);
INSERT INTO demo13 (full_name) VALUES
('John Smith'), ('David Miller'), ('Chris Brown');
UPDATE demo13
SET short_name = CONCAT(
LEFT(full_name, 1),
LEFT(SUBSTRING_INDEX(full_name, ' ', -1), 1)
);
SELECT * FROM demo13;
ผลลัพธ์
| full_name | short_name |
|---|---|
| John Smith | JS |
| David Miller | DM |
| Chris Brown | CB |
คำอธิบาย:
LEFT(full_name, 1)→ ตัวแรกของชื่อ (J, D, C)SUBSTRING_INDEX(full_name, ' ', -1)→ นามสกุล (Smith, Miller, Brown)LEFT(..., 1)→ ตัวแรกของนามสกุล (S, M, B)
ข้อจำกัด: ทำงานได้เฉพาะชื่อ 2 ส่วน (First + Last) หากมี Middle Name ต้องปรับ Logic