在oracle中,instr方法用於對某個字符串進行判斷,判斷是否含有指定的字符,該方法能夠在一個字符串中查找指定的字符,返回被查找到的指定的字符的位置,語法為「instr('來源字串','目標字串','開始位置','第幾次出現')」。
本教學操作環境:windows10系統、Oracle 11g版、Dell G3電腦。
一、instr函數的概念
在Oracle中可以使用instr函數對某個字串進行判斷,判斷其是否含有指定的字元。在一個字串中尋找指定的字元,傳回被查找到的指定的字元的位置。
二,語法
instr(sourceString,destString,start,appearPosition) instr('源字符串' , '目标字符串' ,'开始位置','第几次出现')
其中sourceString代表來源字串;
destString代表要從來源字串中尋找的子字串;
start代表查找的開始位置,這個參數可選的,預設為1;
appearPosition代表想從原始字元中找出第幾次出現的destString,這個參數也是可選的,預設為1
如果start的值為負數,則代表從右往左進行查找,但是位置資料仍然從左向右計算。
傳回值為:查找到的字串的位置。如果沒有查找到,返回0。
三,舉例:
在abcd中找出a的位置,從第一個字母開始查,找出第一次出現時的位置(後面兩個參數可以不寫,預設為1)
select instr('abcd','a',1,1) from dual; ---1 select instr('abcd','c',1,1) from dual; ---3 select instr('abcd','e',1,1) from dual; ---0
此函數可以用於模糊查詢以及判斷包含關係:
例如:
select code,name,dept,occupation from staff where instr(code, '001')> 0;
等同於
select code, name, dept, occupation from staff where code like '%001%' ; select ccn,mas_loc from mas_loc where instr('FH,FHH,FHM',ccn)>0;
等同於
select ccn,mas_loc from mas_loc where ccn in ('FH','FHH','FHM');
推薦教學:《Oracle影片教學》
以上是oracle中instr方法怎麼用的詳細內容。更多資訊請關注PHP中文網其他相關文章!