mybatis 模糊查询 like a and like b怎么写?

问题描述

MySQL数据库上,mybatis 如果模糊查询,两个条件怎么写?请指点一下。 一个条件的模糊查询,测试通过:WHERE STORE_SALE.PRODUCT_NAME LIKE '%'||#{product_name}||'%' 2个条件 WHERE STORE_SALE.PRODUCT_NAME LIKE '%'||#{product_name}||'%' AND STORE_SALE.CUSTOMER LIKE '%'||#{customer}||'%' 测试结果为全部查询,即where 条件无效 哪位知道该怎么写? 3Q

解决方案

用instr是正解,如果要按你自己的写法,可以改成:WHERE STORE_SALE.PRODUCT_NAME LIKE '%${product_name}%' AND STORE_SALE.CUSTOMER LIKE '%${customer}%'
解决方案二:
WHERE STORE_SALE.PRODUCT_NAME like CONCAT('%',#roleName1#,'%') AND STORE_SALE.PRODUCT_NAME like CONCAT('%',#roleName2#,'%')
解决方案三:
WHERE INSTR(STORE_SALE.PRODUCT_NAME,#{product_name})>0 AND INSTR(STORE_SALE.CUSTOMER ,#{customer})>0 用instr函数进行模糊查询比like效率要高很高,推荐你使用instr函数例如 select * from user where instr(name,'张三')>0 意思就是查询user表中name字段所有带张三的名字
解决方案四:
看你写的where语句没啥问题。查询语句有链接符的一般用于oracle数据库,你换成WHERE customer like CONCAT('%', #customer#, '%') 形式做两个条件查询试试。
解决方案五:
like查询其实和其他的差不多,刚刚在本地测试这样两个like是可以查询的你自己在看看你是否写错的了<select id="findActiveBlogLike" resultType="Blog"> SELECT * FROM BLOG WHERE state = ‘ACTIVE’ <if test="title != null"> AND title like #{title} </if> <if test="author != null and author.name != null"> AND author_name like #{author.name} </if></select>
解决方案六:
没觉得有啥问题,你还是配置下log4j看下输出的sql是啥样吧

时间: 2024-11-05 14:41:26

mybatis 模糊查询 like a and like b怎么写?的相关文章

Mybatis使用MySQL模糊查询时输入中文检索不到结果怎么办_java

项目开发中,在做Mybatis动态查询时,遇到了一个问题:MySQL在进行LIKE模糊查询时,输入英文可以正常检索出结果,但是输入中文后检索得到的结果为空. 由于是使用GET方式请求,所以为了确保中文不乱码,在控制台接收到请求参数后,对中文进行了一次编码. try { realName = new String(realName.getBytes("GBK"), "UTF-8"); } catch (UnsupportedEncodingException exce

模糊查询分页hibernate struts

问题描述 模糊查询分页hibernate struts 我在数据库里面查询所有记录 (进行了分页),然后在jsp页面想模糊查询后在分页就不知道怎么写了. 用的是hibernate + struts .比如在a.jsp显示所有记录分页,然后提供模糊查询后结果显示在 a.jsp然后将模糊查询的结果也进行分页 ,不知道怎么调用action 解决方案 hibernate -- 分页模糊查询中setParameter 和setParameterListhibernate -- 分页模糊查询中setPara

模糊查询 含通配符-请问谁有stuts2模糊查询的例子啊?要点击获取数据库的,求…

问题描述 请问谁有stuts2模糊查询的例子啊?要点击获取数据库的,求- 如果你有,请发我邮箱,40c币感谢,谢谢!zhangwenh1228@163.com 解决方案 你是要struts2模糊查询相应的action 还是 要到数据库模块查询呢? 如果要到数据库查询 你自己写SQL就可以了 解决方案二: 郁闷,我都悬赏40c也没人给我发呢么-- 解决方案三: stuts2不会直接操作数据库,你要的模糊查询它只能传递下参数给dao层,模糊查询要在dao层的框架写

mybatis-SpringMVC+Spring+Mybatis+DWZ(模糊查询)

问题描述 SpringMVC+Spring+Mybatis+DWZ(模糊查询) Mybatis里面: select from AUS_USERS where 1 = 1 and AUS_CARDCODE LIKE CONCAT(CONCAT('%','#{ausCardcode}','%')) <if test="ausUsername != null"> and AUS_CARDCODE LIKE CONCAT(CONCAT('%','#{ausUsername}','%

vb.net-VB,net linq 模糊查询List

问题描述 VB,net linq 模糊查询List 我有 一 个书籍列 Dim books As List(Of book) 需要用textbox.text的值 对这个list进行模糊查询,返回list 结果,用循环比较浪费,LINQ 如何做 解决方案 linq 模糊查询linq 模糊查询linq中动态模糊查询

jsp问题-jsp中模糊查询,后台没有出错,为什么实现不了?

问题描述 jsp中模糊查询,后台没有出错,为什么实现不了? 点击查找只是刷新页面,后台没有问题,但是又实现不了 具体代码: <% request.setCharacterEncoding("utf-8"); %> <%! private static final String DBDRIVER ="org.gjt.mm.mysql.Driver"; private static final String DBURL ="jdbc:mysq

一分钟了解阿里云产品:开放搜索的模糊查询功能

开放搜索的模糊查询功能都有哪些,又分别用在什么场景呢?   开放搜索的模糊查询有以下3个功能,用户可以根据实际情况选择最合适的一种:   1 在控制台高级配置->查询分析功能     词权重并不是一个标准的模糊查询,以截图里的例子,会先搜索query="开放"+"搜索"+"好"+"不好",如果这样没办法召回文档的话,会改写query,变成 "开放"+"搜索" RANK "

关于mongodb按照字段模糊查询方法

关于mongodb按照字段模糊查询方法   模糊查询:tname包含某个关键字测试' cd /opt/soft/mongodb/bin ./mongo --host 192.168.0.1  --port 17017  test db.test_info.find({"tname": {$regex: '测试', $options:'i'}})  db.test_info.find({"tname": {$regex:/测试.*/i}}) 

asp查询xml的代码,实现了无刷新、模糊查询功能

xml|刷新|无刷新 asp查询xml的代码,实现了无刷新.模糊查询功能 <html><head><title>不刷新页面查询的方法</title><meta http-equiv="Content-Type" content="text/html; charset=gb2312"></head><script language="javascript"><