mybatis中模糊查询like拼接问题

更新时间:2023-07-07 22:03:44 阅读: 评论:0

mybatis中模糊查询like拼接问题
<!-- ******************** 模糊查询的常⽤的3种⽅式:********************* -->
<lect id="getUrsByFuzzyQuery" parameterType="Ur" resultType="Ur">
brotherhoodlect <include refid="columns"/> from urs
queen<where>
<!--
同桌教育⽅法⼀: 直接使⽤ % 拼接字符串
注意:此处不能写成  "%#{name}%" ,#{name}就成了字符串的⼀部分,
会发⽣这样⼀个异常: The error occurred while tting parameters,
出国留学考试有哪些应该写成: "%"#{name}"%",即#{name}是⼀个整体,前后加上%
-->
toons
<if test="name != null">
name like "%"#{name}"%"
</if>
ovi
<!--⽅法⼆: 使⽤concat(str1,str2)函数将两个参数连接 -->
<if test="phone != null">
and phone like concat(concat("%",#{phone}),"%")
江南style 歌词
</if>
<!--⽅法三: 使⽤ bind 标签,对字符串进⾏绑定,然后对绑定后的字符串使⽤ like 关键字进⾏模糊查询 -->
<if test="email != null">
<bind name="pattern" value="'%'+email+'%'"/>cyrillic
stationarity
and email like #{pattern}
</if>
</where>
</lect>
imply是什么意思4. 表达式:name like '%'||#{name}||'%'
这个不能满⾜要求,直接把数据库中的所有数据查询出来了,不符合我的要求,在mysql中||代表是or的意思
==>  Preparing: lect count(0) from (lect *from bbs_brand WHERE name like'%'||?||'%' and falg=?) as total ==>Parameters: 莲(String), 1(Integer)
亲测mysql数据库 使⽤Concat函数没有问题,另外两种⽅法均出现查所有问题。

本文发布于:2023-07-07 22:03:44,感谢您对本站的认可!

本文链接:https://www.wtabcd.cn/fanwen/fan/90/170379.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:问题   查询   字符串   意思   函数
相关文章
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2022 Comsenz Inc.Powered by © 专利检索| 网站地图