SUBSTR()函数:截取字符串
使用语法:SUBSTR(string,start, [length])
string:需要截取的字符串。
start: 起始位置,**-3**表示从倒数第三个字符开始,从左往右截取。
length:截取长度(默认截取到末尾)。
INSTR()函数:查找字符串
使用语法:INSTR(string,str, [start],[which])
string:源字符串。
str:查找的子字符串(可以是单个字符)。
start:起始位置(默认从开头查找),**-3**表示从倒数第三个字符开始,从右往左查找。
which:查找第几个。
SUBSTR()和INSTR()组合使用
组合使用可以截取两个字符中间的字符串,下面例子从字符串
'da.bai.cai'中截取到'bai':
1.先使用SUBSTR函数写出模板
SUBSTR('da.bai.cai', 开始位置,长度)
2.开始位置:
查找到第一个分隔符再加一
INSTR('da.bai.cai','.',1,1)+1
3.长度:中间位置长度不确定,所以查找第二个分隔符位置减去开始位置得
到
INSTR('da.bai.cai','.',1,2) - (INSTR('da.bai.cai','.',1,1)+1)
4.结果为:
SELECT SUBSTR( 'da.bai.cai',
INSTR('da.bai.cai','.',1,1)+1,
INSTR('da.bai.cai','.',1,2) - INSTR('da.bai.cai','.',1,1)-1 )
FROM DUAL;
版权归原作者 程序员白菜 所有, 如有侵权,请联系我们删除。