引言
在mysql中,有時候需要提取某個表某個字段中的部分值,如Address字段的值爲A-B-C,想要獲取address字段的A 或 B 或 C部分的值。
1:提取後部分的值
select
order_no,chassis_no, l.path_desc,
IFNULL(substring_index(l.path_desc, "-",- 1 ), '' ) AS Address
from dfcv_vps_plus_tbdeliveryinfo l where chassis_no ='L6000798'
2:提取前部分的值
select
order_no,chassis_no, l.path_desc,
IFNULL(substring_index(l.path_desc, "-", 1 ), '' ) AS Address
from dfcv_vps_plus_tbdeliveryinfo l where chassis_no ='L6000798'
總結: 這時候我們可以使用substring_index(x,"y ",z) 函數來進行查詢處理,x就是要查詢的字段,y爲要分割的字符,z爲正整數或負整理,正數取分割字符前邊的值,負數取分割字符後邊的值