MySQL模糊查询特殊字符如何查询

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MySQL模糊查询特殊字符如何查询相关的知识,希望对你有一定的参考价值。

使用 escape 关键字定义转义符。

当转义符置于通配符之前时,该通配符就解释为普通字符。例如,要搜索在任意位置包含字符串   %   的字符串,可以这么用,第二个%被重新定义为查找的关键字,而不再是通配符:

select * from user where name like "%/%%" escape "/";

参考技术A like %关键字%

mybatis 模糊查询特殊字符的处理

/**
* 把模糊查询的检索的关键字对特殊字符进行转换如“[”、“%”
* @param str
* 需要转换的字符串
* @return 返回模糊查询的字符串
*/
public static String ToLikeStr(String str)
{
if(str != null && str.length()>0)
{
str =str.trim().replace("\\", "\\\\%").replace("%", "\\%").replace("_", "\\_");
}
return str ;
// str =
}

字段即你想那个转换:
typicalCase.setTrade_code(DesUtil.ToLikeStr(typicalCase.getTrade_code()));

 

mybatis 配置:

<isNotEmpty prepend="and" property="trade_code">
trade_code like ‘%‘ || #trade_code# || ‘%‘ escape ‘\‘
</isNotEmpty>


















以上是关于MySQL模糊查询特殊字符如何查询的主要内容,如果未能解决你的问题,请参考以下文章

mybatis 模糊查询特殊字符的处理

sql模糊查询

sql like 通配符 模糊查询技巧及特殊字符

sql like 通配符 模糊查询技巧及特殊字符

Sql Like 通配符 模糊查询技巧及特殊字符

MySQL使用总结