Mybatis中mapper.xml中的模糊查询

Posted 王行行

tags:

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

Mybatis中mapper.xml中的模糊查询

<!--
                方法一: 直接使用 % 拼接字符串 
                注意:此处不能写成  "%#{name}%" ,#{name}就成了字符串的一部分,
                会发生这样一个异常: The error occurred while setting parameters,
                应该写成: "%"#{name}"%",即#{name}是一个整体,前后加上%
            -->
            <if test="name != null">
                name like "%"#{name}"%"
            </if>
            <!--方法二: 使用concat(str1,str2)函数将两个参数连接 -->
            <if test="phone != null">
                and phone like concat(concat("%",#{phone}),"%")
            </if>
            <!--方法三: 使用 bind 标签,对字符串进行绑定,然后对绑定后的字符串使用 like 关键字进行模糊查询 -->
            <if test="email != null">
                <bind name="pattern" value="‘%‘+email+‘%‘"/>
                and email like #{pattern}
            </if>

 

以上是关于Mybatis中mapper.xml中的模糊查询的主要内容,如果未能解决你的问题,请参考以下文章

mybatis中的模糊查询,Oracle和MySQL中的concat

MyBatis Mapper.xml文件中 $和#的区别

关于Mybatis的mapper.xml文件中从pojo获取属性值的问题

MyBatis Mapper.xml文件中 和#的区别

mybatis-plus两表联查带分页带模糊查询所有订单信息

mybatis中mapper.xml分页查询oracle的sql语句,按字段查询