Oracle SQL中实现indexOf和lastIndexOf功能,substr和instr用法
博客分类: oracle
PL/SQL
instrsubstrlastindexofindexoforacle .
Oracle SQL中实现indexOf和lastIndexOf功能
Oracle, SQL, indexOf, lastIndexOf
今天遇到一个问题,需要将一个格式为1_2_3这样的字符串拆解组成1_3的串,并用SQL更新数据库。
在Oracel中,可以用substr和INSTR函数来实现此功能。
substr的第三个参数为1时,实现的是indexOf功能。
substr的第三个参数为-1时,实现的是lastIndexOf功能。
最后的SQL语句如下:
update ebms_data_table t set t.ref_name = substr(t.name, 0, INSTR(t.name, '_', 1, 1))|| substr(t.name, INSTR(t.name, '_', -1, 1)+1);
(二)
再给大家举个例子:
select
i1.name,
instr(i1.name, 'Oracle SQL中实现indexOf和lastIndexOf功能,substr和i