您好,登錄后才能下訂單哦!
如何在Oracle中使用like查詢對下劃線進行處理?針對這個問題,這篇文章詳細介紹了相對應的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。
原因分析
下劃線“_”在oracle中不是單純的表示下劃線的意思,而是表示匹配單一任何字符! 如以上查詢語句就表示"("左邊只要有任意字符都會被查詢到
使用 escape() 函數
escape關鍵字經常用于使某些特殊字符,如通配符:'%','_‘轉義為它們原來的字符的意義,被定義的轉義字符通常使用'',但是也可以使用其他的符號。
例如:上面的條件語句可以寫成where t.name1 like '%_(%'escape ‘';,這個“\”可以改為其他的字符
--使用escape函數將"_"轉為下劃線的含義 select t.name1 from ZJ_STANDARD_ITEM t where t.name1 like '%\_(%'escape '\';
知識點擴展:Oracle中LIKE模糊查詢的使用
Like 模糊查詢
占位符
% 替代一個或多個字符
_ 僅替代一個字符
[charlist] 字符列中的任何單一字符
[^charlist] 或者 [!charlist] 不在字符列中的任何單一字符
(1)查詢 用戶名以‘S'開頭的員工信息
Select * from emp where ename like 'S%'
(2)查詢 用戶名以‘S'結尾的員工信息
Select * from emp where ename like '%S'
(3)查詢用戶名第二個字母是‘A'的員工信息
select * from emp where ename like '_A%'
(4)查詢用戶名第三個字母是‘A'的員工信息
select * from emp where ename like '__A%'
(5)查詢用戶名中包含 ‘A' 的員工信息
select * from emp where ename like '%A%'
(6)查詢用戶名中不包含 ‘A' 的員工信息
select * from emp where ename not like '%A%'
(7)從 "Persons" 表中選取居住的城市以 "A" 或 "L" 或 "N" 開頭的人:
SELECT * FROM Persons WHERE City LIKE '[ALN]%'
(8)從 "Persons" 表中選取居住的城市不以 "A" 或 "L" 或 "N" 開頭的人:
SELECT * FROM Persons WHERE City LIKE '[!ALN]%'
關于如何在Oracle中使用like查詢對下劃線進行處理問題的解答就分享到這里了,希望以上內容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關注億速云行業資訊頻道了解更多相關知識。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。