ฟังก์ชัน MySQL SUBSTRING_INDEX() ส่งคืนสตริงย่อยจากสตริงที่กำหนดก่อนที่จะมีตัวคั่น จำนวนการเกิดขึ้นถูกระบุเป็นอาร์กิวเมนต์ของมัน มันจะเข้าใจมากขึ้นด้วยความช่วยเหลือของไวยากรณ์ของฟังก์ชัน SUBSTRING_INDEX() ดังนี้ -
ไวยากรณ์
SUBSTRING_INDEX(Str, delim, count)
ที่นี่
- Str คือสตริงที่ใช้คืนค่าสตริงย่อย
- Delim เป็นตัวคั่นที่จะค้นหาในสตริง
- จำนวนคือจำนวนครั้งในการค้นหาตัวคั่น
ตัวอย่าง
mysql> Select SUBSTRING_INDEX('My Name is Ram','a',2); +-----------------------------------------+ | SUBSTRING_INDEX('My Name is Ram','a',2) | +-----------------------------------------+ | My Name is R | +-----------------------------------------+ 1 row in set (0.00 sec)
แบบสอบถามด้านบนส่งคืนสตริงย่อยก่อนที่จะเกิด 'a' ที่สองเนื่องจากตัวคั่นคือ 'a' และนับเป็น 2
mysql> Select SUBSTRING_INDEX('My Name is Ram','a',1); +-----------------------------------------+ | SUBSTRING_INDEX('My Name is Ram','a',1) | +-----------------------------------------+ | My N | +-----------------------------------------+ 1 row in set (0.00 sec)
ข้อความค้นหาด้านบนจะคืนค่าสตริงย่อยก่อนที่จะเกิด 'a' ตัวแรก เนื่องจากตัวคั่นคือ 'a' และนับเป็น 1