ORACLE中BLOB模糊查詢

2021-07-14 12:14:32 字數 584 閱讀 2133

blob儲存的資料是無法使用「=」或者"like",直接查詢的。

查詢辦法是將blob轉成varchar2進行條件過濾:

select * from cms_offline_contents where utl_raw.cast_to_varchar2(dbms_lob.substr(column,2000,1)) like '%oracle%'

或者select * from cms_offline_contents where dbms_lob.instr(file_content,utl_raw.cast_to_raw('type'),1,1)<>0

上面的方法比較簡單,但偶爾會遇到查詢條件是中文,並且有可能轉成varchar2有亂碼,那就要用到下面的方法了:

select * from cms_offline_contents where utl_raw.cast_to_varchar2(utl_raw.convert(dbms_lob.substr(file_content,2000,1),'simplified chinese_china.zhs16gbk', 'american_the netherlands.utf8')) like '%本所要聞%'

ORACLE中的模糊查詢

oracle中的模糊查詢是靠like操作符來完成的。現在我們來看一下like操作符使用過程中的一些具體的問題 代表0個或者多個字元 下劃線 代表乙個字元 比如 1 select ename from emp where ename like s 上面這個例子查詢出的是以大寫s為名字首字母的員工的員工...

oracle 中模糊查詢 like

oracle中模糊查詢用like與萬用字元 實現 1 字段 like 關鍵字 字段包含 關鍵字 的記錄 2 字段 like 關鍵字 欄位以 關鍵字 開始的記錄 3 字段 like 關鍵字 欄位以 關鍵字 結束的記錄 如果要找出乙個欄位中既有 關鍵字1 又有 關鍵字2 可以用and條件 如果要找出乙個...

Oracle 模糊查詢

在where子句中,可以對datetime char varchar欄位型別的列用like子句配合萬用字元選取那些 很像.的資料記錄,以下是可使用的萬用字元 零或者多個字元 單一任何字元 下劃線 特殊字元 在某一範圍內的字元,如 0 9 或者 aeth 不在某範圍內的字元,如 0 9 或者 aeth...