首页 新闻 会员 周边 捐助

mybatis模糊查询时无结果,在数据库中运行语句有结果

0
悬赏园豆:50 [已解决问题] 解决于 2019-09-15 17:12

问题描述:
mybatis模糊查询时无结果,在数据库中运行语句有结果,参数的创制无问题,但是查询结果为0条

尝试:
select * from book_t where #{searchType} like concat('%',#{searchWord},'%')
将查询的语句变成select * from book_t where #{searchType} like '我';
可以正常执行,证明mybatis是可以在where后使用传入参数的。

想要根据多选框的选项做where后面的条件,再进行模糊查询

代码改变我的世界的主页 代码改变我的世界 | 初学一级 | 园豆:159
提问于:2019-06-14 22:52
< >
分享
最佳答案
0

select * from book_t where ${searchType} like concat('%',#{searchWord},'%')

searchType 用#的话就解析成"xx"去数据库搜索那搜索不到

井号与$的区别最大在于:#{} 传入值时,sql解析时,参数是带引号的,而${}穿传入值,sql解析时,参数是不带引号的。

代码改变我的世界 | 初学一级 |园豆:159 | 2019-06-15 19:26
其他回答(1)
0

{}:占位符.相当于sql语句中的?

${}:字符串拼接指令,如果入参位普通类型,{}内只能位value

收获园豆:50
WuHJ | 园豆:244 (菜鸟二级) | 2019-06-16 23:00
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册