0


Oracle——SUBSTR()截取字符串,INSTR()查找字符串

  • SUBSTR()函数:截取字符串

使用语法:SUBSTR(stringstart, [length])

string:需要截取的字符串。

start: 起始位置,**-3**表示从倒数第三个字符开始,从左往右截取。

length:截取长度(默认截取到末尾)。

  • INSTR()函数:查找字符串

使用语法:INSTR(stringstr, [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; 
标签: oracle 数据库 sql

本文转载自: https://blog.csdn.net/m0_65249647/article/details/129883285
版权归原作者 程序员白菜 所有, 如有侵权,请联系我们删除。

“Oracle——SUBSTR()截取字符串,INSTR()查找字符串”的评论:

还没有评论