OracleでINSTRとINSTRB関数を使って文字列の位置を取得

2021年11月19日

環境
Oracle 12.2.0.1.0
書式
INSTR(対象文字列 , 検索文字列 , 検索位置 , n )
INSTRB(対象文字列 , 検索文字列 , 検索位置 , n )
文字列を検索文字列で検索位置から検索してn番目に出現した位置を返します。

使用例

1.対象文字列の4文字目から2回目に出現する検索文字列を確認します

SELECT
 INSTR('studyskillsmart','s',4,2)
FROM DUAL

結果 11

2.対象文字列の3バイト目から2回目に出現する検索文字列を確認します

SELECT
 INSTRB('テスト太郎テスト','ス',3,2)
FROM DUAL

結果 13

Oracle 12c

Posted by arkgame