數(shù)據(jù)庫模糊搜索時,都知道應(yīng)該用通配符%號來模糊匹配。如:select *from table where content like '%key%'。但當關(guān)鍵字key中也包含有%號時,應(yīng)該怎么辦?
數(shù)據(jù)庫中有關(guān)鍵字:escape就是用來轉(zhuǎn)換的。使用escape關(guān)鍵字定義轉(zhuǎn)義符時,當轉(zhuǎn)義符置于通配符之前時,該通配符就解釋為普通字符。用法:ESCAPE 'escape_character' 其允許在字符串中搜索通配符而不將其作為通配符使用。'escape_character'通常用'/'或'\'做為轉(zhuǎn)義符,其它如‘!'等也可以做為轉(zhuǎn)義符。
示例:
select *from table where content like '%/%%' escape '/'
/為轉(zhuǎn)義字符,第二個%為普通字符,第一、三個%為通配符。
select *from table where content like '%/%//%' escape '/'
/為轉(zhuǎn)義字符,第二個%為普通字符,第一、三個%為通配符,第二個/為轉(zhuǎn)義字符,第三個/為普通字符。