ฟังก์ชัน SUBSTRING() และรูปแบบต่างๆ
ฟังก์ชัน SUBSTRING() ใช้แยกสตริงย่อยจากสตริง คืนค่าสตริงย่อยที่มีความยาวกำหนด จากตำแหน่งเริ่มต้นที่ระบุ มีรูปแบบดังนี้:
- SUBSTRING(str, pos)
- SUBSTRING(str FROM pos)
- SUBSTRING(str, pos, len)
- SUBSTRING(str FROM pos FOR len)
รูปแบบที่ไม่มี len: คืนสตริงย่อยจากตำแหน่ง pos จนจบสตริง
รูปแบบที่มี len: คืนสตริงย่อยยาว len ตัวอักษร จากตำแหน่ง pos
รูปแบบที่ใช้ FROM เป็นไวยากรณ์มาตรฐานของ MySQL
สามารถใช้ค่า pos เป็นลบได้: จะเริ่มจากท้ายสตริงไปหน้า pos ตัวอักษร
ตัวอย่าง
mysql> SELECT SUBSTRING('Quadratically',5);
+---------------------------------------------------------+
| SUBSTRING('Quadratically',5) |
+---------------------------------------------------------+
| ratically |
+---------------------------------------------------------+
mysql> SELECT SUBSTRING('foobarbar' FROM 4);
+---------------------------------------------------------+
| SUBSTRING('foobarbar' FROM 4) |
+---------------------------------------------------------+
| barbar |
+---------------------------------------------------------+
mysql> SELECT SUBSTRING('Quadratically',5,6);
+---------------------------------------------------------+
| SUBSTRING('Quadratically',5,6) |
+---------------------------------------------------------+
| ratica |
+---------------------------------------------------------+
mysql> Select SUBSTRING('foobarbar',-4);
+---------------------------+
| SUBSTRING('foobarbar',-4) |
+---------------------------+
| rbar |
+---------------------------+
ฟังก์ชันอื่นที่ทำงานเหมือนกัน: MID() และ SUBSTR() เป็น synonyms ของ SUBSTRING()