Oracle中Instr()和substr()函数

    作者:课课家教育更新于: 2019-04-22 15:59:10

      Oracle中Instr()和substr()函数

      在Oracle中

      可以使用instr函数对某个字符串进行判断,判断其是否含有指定的字符。

      其语法为:

      instr(sourceString,destString,start,appearPosition).instr('源字符串','目标字符串','开始位置','第几次出现')

      其中sourceString代表源字符串;

      destString代表想聪源字符串中查找的子串;

      start代表查找的开始位置,该参数可选的,默认为1;

      appearPosition代表想从源字符中查找出第几次出现的destString,该参数也是可选的,默认为1;

      如果start的值为负数,那么代表从右往左进行查找,但是位置数据仍然从左向右计算。

      返回值为:查找到的字符串的位置。

      对于instr函数,我们经常这样使用:从一个字符串中查找指定子串的位置。例如:

      SQL>selectinstr('yuechaotianyuechao','ao')positionfromdual;

      POSITION

      ----------

      6

      从第7个字符开始搜索

      SQL>selectinstr('yuechaotianyuechao','ao',7)positionfromdual;

      POSITION

      ----------

      17

      从第1个字符开始,搜索第2次出现子串的位置

      SQL>selectinstr('yuechaotianyuechao','ao',1,2)positionfromdual;

      POSITION

      ----------

      17

      注意:1。若‘起始位置’=0时返回结果为0,

      2。这里只有三个参数,意思是查找第一个要查找字符的位置(因为‘第几次出现’默认为1),

      当‘起始位置’不大于要查找的第一个字符的位置时,返回的值都将是第一个字符的位置,如果‘起始位置’大于要查找的第一个字符的位置时,返回的值都将是第2个字符的位置,依此类推……(但是也是以第一个字符开始计数)

      substr函数的用法,取得字符串中指定起始位置和长度的字符串,默认是从起始位置到结束的子串。

      substr(string,start_position,[length])substr('目标字符串',开始位置,长度)

      如:

      substr('Thisisatest',6,2)wouldreturn'is'

      substr('Thisisatest',6)wouldreturn'isatest'

      substr('TechOnTheNet',-3,3)wouldreturn'Net'

      substr('TechOnTheNet',-6,3)wouldreturn'The'selectsubstr('Thisisatest',-4,2)valuefromdual

      找Oracle视频教程学oracle,上课课家教育IT培训专家。

      Oracle中Instr()和substr()函数_Oracle_课课家教育

课课家教育

未登录