Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> MySQL

SUBSTRING_INDEX() คืนสตริงเดิมเมื่อ count มากกว่าจำนวน delimiter

พฤติกรรมเมื่อ count เกินจำนวน delimiter

ถ้าค่า count มากกว่าจำนวนครั้งที่ delimiter ปรากฏ ฟังก์ชันจะคืน สตริงต้นฉบับทั้งหมด

ตัวอย่าง

mysql> SELECT SUBSTRING_INDEX('www.google.co.in', '.', 4);
+-------------------------------------------+
| SUBSTRING_INDEX('www.google.co.in', '.', 4) |
+-------------------------------------------+
| www.google.co.in                          |
+-------------------------------------------+

การอธิบาย

  • Delimiter = '.' ปรากฏ 3 ครั้ง
  • Count = 4 (มากกว่า 3)
  • ผลลัพธ์ = สตริงทั้งหมด

Syntax

SUBSTRING_INDEX(str, delim, count)

กฎเพิ่มเติม

  • count > 0: นับจากซ้ายไปขวา คืนส่วนก่อน delimiter ครั้งที่ count
  • count < 0: นับจากขวาไปซ้าย คืนส่วนหลัง delimiter ครั้งที่ |count|
  • count = 0: คืนสตริงว่าง