ใช้ REPLACE() ลบข้อความบางส่วน
ฟังก์ชัน REPLACE() แทนที่ substring ด้วย Empty String เพื่อ "ลบ" ส่วนที่ไม่ต้องการ
ไวยากรณ์
UPDATE table SET column = REPLACE(column, 'text_to_remove', '');
ตัวอย่าง: ลบ "Java Version " เหลือแค่หมายเลข Version
CREATE TABLE removePartialTextDemo (JavaVersionDetails VARCHAR(100));
INSERT INTO removePartialTextDemo VALUES
('Java Version 1.0'), ('Java Version 1.1'), ('Java Version 1.2'),
('Java Version 1.3'), ('Java Version 1.4'), ('Java Version 7');
คำสั่ง Update
UPDATE removePartialTextDemo SET JavaVersionDetails = REPLACE(JavaVersionDetails, 'Java Version ', '');
ผลลัพธ์
+--------------------+ | JavaVersionDetails | +--------------------+ | 1.0 | | 1.1 | | 1.2 | | 1.3 | | 1.4 | | 7 | +--------------------+
คุณสมบัติ
- แทนที่ ทุกครั้งที่เจอ ในสตริง
- Case-sensitive
- ถ้าต้องการลบเฉพาะครั้งแรก → ต้องใช้ SUBSTRING + LOCATE (ซับซ้อนกว่า)
- MySQL 8.0+ ใช้
REGEXP_REPLACE()สำหรับ Pattern Complex
ตัวอย่าง REGEXP_REPLACE (MySQL 8.0+)
UPDATE table SET col = REGEXP_REPLACE(col, 'Java Version\\s+', '');
ลบ "Java Version" + ช่องว่างหลังตัวเลข