【MyBatis】 动态SQL——模糊查询 LIKE

【MyBatis】 动态SQL——模糊查询 LIKE一、like’%?%’SELECT*FROMt_usrWHEREnamelike’%${name}%’SQL解析为:SELECT*FROMt_usrWHEREnamelike’%海%’传参必须用${}不能用#{},这样写的弊端是不安全,不能防sql注入有关LIKE使用,请参见:https://blog.csdn.net/wrs120/articl…

大家好,又见面了,我是你们的朋友全栈君。

一、like ‘%?%’

SELECT  * 
FROM t_usr 
WHERE  name like '%${name}%'

SQL解析为:SELECT * FROM t_usr WHERE name like ‘%海%’
传参必须用${}不能用#{},这样写的弊端是不安全,不能防sql注入
有关LIKE使用,请参见:https://blog.csdn.net/wrs120/article/details/7930582

二、CONCAT()拼接%

SELECT  * 
 FROM t_usr  
 WHERE name like CONCAT('%',CONCAT(#{name},'%'))

SQL解析为:SELECT * FROM t_usr WHERE name like CONCAT(‘%’,CONCAT(?,’%’))
拼接时%必须加引号
有关CONCAT()使用,请参见:https://blog.csdn.net/wrs120/article/details/81148101

三、bind

bind 元素可以从 OGNL 表达式中创建一个变量并将其绑定到上下文。OGNL(Object Graph Navigation Language的缩写)是一种强大的表达式语言,更多用法,见:https://blog.csdn.net/isea533/article/details/50061705/

  SELECT  *  
  FROM t_usr 
  WHERE
      <if test="name !=null || name !=''">
          <bind name="usrName" value="'%' + name + '%'"/>
          name like #{usrName}
      </if>

SQL解析为:SELECT * FROM t_usr WHERE name like ?

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/140022.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • oracle里面concat函数用法,oracle wm_concat函数用法-Oracle

    oracle里面concat函数用法,oracle wm_concat函数用法-Oraclewmsys.wm_concat函数,它的作用是以’,’链接字符例子如下:SQL>createtableidtable(idnumber,namevarchar2(30));TablecreatedSQL>insertintoidtablevalues(10,’ab’);1rowinsertedSQL>insertintoidtablevalues…

    2022年5月18日
    54
  • 详解Nacos和Eureka的区别「建议收藏」

    详解Nacos和Eureka的区别「建议收藏」1.Eureka是什么Eureka是SpringCloud微服务框架默认的也是推荐的服务注册中心,由Netflix公司与2012将其开源出来,Eureka基于REST服务开发,主要用于实现AWS云的中服务定位,以实现中间层服务器的负载均衡和故障转移,2018年7月份……………………………

    2022年8月21日
    13
  • springboot集成Swagger2「建议收藏」

    springboot集成Swagger2「建议收藏」Swagger2简介 我们提供Restful接口的时候,API文档是尤为的重要,它承载着对接口的定义,描述等。它还是和API消费方沟通的重要工具。在实际情况中由于接口和文档存放的位置不同,我们很难及时的去维护文档。1.随项目自动生成强大RESTful API文档,减少工作量2.API文档与代码整合在一起,便于同步更新API说明3.页面测试功能来调试每个RESTful API…

    2022年6月13日
    28
  • pytest报错_eclipse提交代码到git

    pytest报错_eclipse提交代码到git前言我们每天写完自动化用例后都会提交到git仓库,随着用例的增多,为了保证仓库代码的干净,当有用例新增的时候,我们希望只运行新增的未提交git仓库的用例。pytest-picked插件可以

    2022年7月28日
    19
  • 模糊数学评价体系_灰色模糊综合评价

    模糊数学评价体系_灰色模糊综合评价>`建模算法整理`,文章主要介绍了模糊综合评价中的要把论域中的对象对应评语集合一个指定的评语的情况(一级模糊评价)>`参考学习资料`:清风数学建模数学建模算法与程序>`其他资源`:2016到2020美赛o奖论文===姜启源司守奎电子书===论文模板====算法代码>如果需要可私信或者评论

    2025年6月30日
    5
  • 英语词性介绍及转换

    英语词性介绍及转换

    2021年8月15日
    95

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号