"景先生毕设|www.jxszl.com

Oracle SQL中indexOf和lastIndexOf 函数写法

2023-01-09 11:37编辑: www.jxszl.com景先生毕设

Oracle SQL中indexOf和lastIndexOf 函数写法

一、语法讲解:
   1. instr(string1, string2,int1,int2) :
       string1:源字符串
      string1:目标字符串
      int1:1  表示正序 , -1 表示倒序
      int2:目标第几次出现的位置

int1的第三个参数为1时,实现的是indexOf功能。

int1的第三个参数为-1时,实现的是lastIndexOf功能。
 
二、函数举例说明:
select   INSTR('www.jxszl.com', 'w', -1, 1)   from dual  -- 返回结果为:3    --类似于编程中的lastIndexOf()

select  INSTR('www.jxszl.com', 'w', 1, 1) 返回结果为:1        --类似于编程中的IndexOf()


三、INSTR()函数扩展:

语法一:instr( string1, string2 )   
        语法说明:  instr(源字符串, 目标字符串)
 

语法二:instr( string1, string2 , start_position , end_position  )   
           语法说明:    instr(源字符串, 目标字符串, 起始位置, 匹配序号)

INSTR():俗称查找函数,可以查找字符角标位置。

语法一SQl举例:
select instr('www.jxszl.com','w') from dual; --返回结果:1   第一次出现“w”的位置
select instr('www.jxszl.com','51') from dual; --返回结果:5   第一次出现“51”开始出现的位置
select instr('www.jxszl.com','jrft') from dual; --返回结果:7  第一次出现“jrft”开始出现的位置

语法二SQl举例:
 
select instr('www.jxszl.com','w',1,1)  from dual;  --返回结果:1   查找第一次出现的“l”的位置
select instr('www.jxszl.com','jrft',1,1) from dual;  --返回结果:7   查找最后一次出现的“jrft”的位置
select instr('www.jxszl.com','w',-1,1)  from dual;  --返回结果:3   查找最后一次出现的“w”的位置


原文链接:http://www.jxszl.com/biancheng/shujuku/153432.html