oracle clob模糊查詢
阿新 • • 發佈:2019-02-15
做一個例子,備忘:
使用oracle中內建函式dbms_lob.instr()查詢clob型別的字串
DBMS_LOB.INSTR (
lob_loc IN BLOB,
pattern IN RAW,
offset IN INTEGER := 1,
nth IN INTEGER := 1)
RETURN INTEGER;
DBMS_LOB.INSTR (
lob_loc IN CLOB CHARACTER SET ANY_CS,
pattern IN VARCHAR2 CHARACTER SET lob_loc%CHARSET,
offset IN INTEGER := 1,
nth IN INTEGER := 1)
RETURN INTEGER;
DBMS_LOB.INSTR (
file_loc IN BFILE,
pattern IN RAW,
offset IN INTEGER := 1,
nth IN INTEGER := 1)
RETURN INTEGER;
語法:
INSTR(源字串, 目標字串, 起始位置, 匹配序號)
源字串:字串或者列
目標字串:要定位的字串
起始位置:開始的位置
匹配序號:目標字串第幾次出現
注意:開始位置是從1開始的
0開始是查不出來的:
select * from table t where dbms_lob.instr(t.name,'xxx',1,1)>0;
返回值:
當目標字串沒有在源字串中找到,返回0;當源字串或目標字串為null,則返回null;
其他情況則返回目標字串在源字串中的其實位置,此函式將返回模式中第n個模式的匹配位置,從指定的偏移開始。