数据库模糊搜索时,关键字中有%号,怎么办?

数据库模糊搜索时,关键字中有%号,怎么办?
0 前言

  数据库模糊搜索时,都知道应该用通配符%号来模糊匹配。如:select *from table where content like '%key%'。但当关键字key中也包含有%号时,应该怎么办?

  数据库中有关键字:escape就是用来转换的。使用escape关键字定义转义符时,当转义符置于通配符之前时,该通配符就解释为普通字符。

  用法:ESCAPE 'escape_character' 其允许在字符串中搜索通配符而不将其作为通配符使用。'escape_character'通常用'/'或'\'做为转义符,其它如‘!'等也可以做为转义符。

1 示例

  select *from table where content like '%/%%' escape '/'

  /为转义字符,第二个%为普通字符,第一、三个%为通配符。

  select *from table where content like '%/%//%' escape '/'

  /为转义字符,第二个%为普通字符,第一、三个%为通配符,第二个/为转义字符,第三个/为普通字符。

版权声明: 本博客地址 http://www.cnblogs.com/joinclear,欢迎转载,转载请标明原文作者和链接。

文章说明: 一家之辞难免有误,欢迎您中肯的指正;如对您有帮助,不胜荣幸,但更希望能够抛砖引玉。

- joinclear     

原文地址:https://www.cnblogs.com/joinclear/p/2932842.html