方法一:

<!--  根据hid,hanme,grade,模糊查询医院信息-->

方法一:
List<Hospital> getHospitalLike(@Param("selectword") String selectword);<select id="getHospitalLike" resultType="com.hand.hand.domain.Hospital"> SELECT * FROM hospital where hid=cast(#{selectword} as signed INTEGER ) OR hname like concat('%',#{selectword},'%') OR grade like concat('%',#{selectword},'%')</select>

 where hid=cast(#{selectword} as signed INTEGER )  hid为Integer类型,而参数selectword为string类型,所以用cast将string转化为Integer where hname like concat('%',#{selectword},'%') 字符串拼接,将%和selectword拼接成%selectword%

方法二:动态sql中的bind
List<Hospital> getHospitalLike(@Param("selectword") String selectword); <select id="getHospitalLike" resultType="com.hand.hand.domain.Hospital"><bind name="bindselectword" value="'%'+selectword+'%'"></bind> SELECT * FROM hospital<if test="selectword!=null"> where hid=cast(#{selectword} as signed INTEGER ) OR hname like #{bindselectword} OR grade like #{bindselectword}</if>

</select>

方法三: 在service层直接拼接字符串,xml直接使用转入的参数

此方法测试出错(参考博客后,测试出错): <!--where hid like '%'||#{selectword}||'%' or hname like '%'||#{selectword}||'%' or grade like '%'||#{selectword}||'%'-->

其他拼接法,可参考:https://www.cnblogs.com/dushan/p/4766954.html

转载于:https://www.cnblogs.com/shuaifing/p/7928628.html

mybatis中使用mysql的模糊查询字符串拼接(like)相关推荐

  1. Mybatis中使用oracle的模糊查询的SQL语句写法

    在学习mybatis的学习中,用到模糊查询的时候,发现直接拼接成'%'#{description}'%'会报错,然后整理了三种模糊查询的SQL语句写法: 1.在传参的时候,就把参数拼接为"% ...

  2. MyBatis中使用LIKE关键字模糊查询

    1 . SQL中拼接字符串 SELECT * FROM tbName WHERE name LIKE CONCAT(CONCAT('%', #{param}), '%'); SELECT * FROM ...

  3. mysql的模糊查询以及时间类型整理

    最近项目需求做模糊查询,大家也都知道,模糊查询是挺简单的,但难的是如何提升效率,,,当然在此咱们不说其他高深的,只针对mysql的模糊查询 1.mysql中除了like模糊查询,还有另一种模糊查询,F ...

  4. mysql模糊查询单词_你知道什么是 MySQL 的模糊查询?

    原标题:你知道什么是 MySQL 的模糊查询? 作者 | luanhz 责编 | 郭芮 本文对MySQL中几种常用的模糊搜索方式进行了介绍,包括LIKE通配符.RegExp正则匹配.内置字符串函数以及 ...

  5. mysql优化模糊查询_MySQL的LIKE模糊查询优化

    %xxx%这种方式对于数据量少的时候,我们倒可以随意用,但是数据量大的时候,我们就体验到了查询性能的问题,像老化的车子艰难趴着坡一样,并且这种方式并未使用到索引,而是全表扫描 mysql 高效模糊查询 ...

  6. 在mybatis用mysql的代码块_关于Mybatis 中使用Mysql存储过程的方法

    1.存储过程的简介 我们常用的操作数据库语言SQL语句在执行的时候需要要先编译,然后执行,而存储过程(Stored Procedure)是一组为了完成特定功能的SQL语句集,经编译后存储在数据库中,用 ...

  7. Mybatis映射文件SQL语句模糊查询,#和$的区别和注意事项

    Mybatis映射文件SQL语句模糊查询 1. "%"#{value}"%" 在参数中不需要添加 %_ 推荐使用 2. '%${value}%' 在参数中不需要 ...

  8. mysql 4 中文模糊查询_解决MySQL中文模糊查询问题

    解决MySQL中文模糊查询问题: 我们在MySQL中进行中文模糊查询时,经常会返回一些与之不相关的记录,比如查找 "%a%" 时,返回的可能有中文字符,却没有 a 字符存在.对于此 ...

  9. mysql查询单个员工信息_PHP+MySQL实现模糊查询员工信息功能示例

    本文实例讲述了PHP+MySQL实现模糊查询员工信息功能.分享给大家供大家参考,具体如下: 一.代码 注意两点: 1.用Notepad+编辑时,格式选择:[编码字符集]->[中文]->[g ...

最新文章

  1. git常用命令及规范流程
  2. Programming Computer Vision with Python (学习笔记一)
  3. UVA 1151 Buy or Build MST(最小生成树)
  4. 关于 SAP 电商云 Spartacus UI package.json 中的 sass 依赖
  5. spring依赖注入_Spring依赖注入技术的发展
  6. REST framework 用户认证源码
  7. linux 多线程安全定时器
  8. 清北学堂----北京集训
  9. 微软IT规划方法论解读
  10. 创建触发器报错_Oracle行级触发器的使用
  11. 海力士固态测试软件,ACPI SSD2G 256GB性能测试
  12. Funcode学习笔记:写一个维护性高、扩展性强的框架【By Myself】【C++】
  13. 草根站长的你是感觉自豪还是苦逼
  14. 计算机408考研笔记汇总
  15. ssm企业人事管理系统
  16. 新冠病毒对计算机的影响,人工智能给新冠病毒分类
  17. 职工科研项目管理系统的设计与实现附代码
  18. BoardCast BroadcastReceiver 基础
  19. openlayers 利用克里金插值法渲染等值面
  20. HDU 百度之星(测试赛) - 1002 列变位法解密

热门文章

  1. npoi xlsx 文件损坏_解决右键新建xlsx文件错误
  2. python展开面_python面度对象(属性,类方法,静态方法)
  3. 小波变换输出变量详解
  4. energy计算机电脑,energy management
  5. 天翼云从业认证(1.3)了解数据库的概念、SQL、关系型数据库、大数据和 NoSQL 数据库
  6. springBoot第二数据源访问dao 报BindingException: Invalid bound statement(not found)
  7. 2021-04-21--中标麒麟-yum源修改
  8. Winform中选取指定文件夹并获取其下所有文件
  9. Vue+Openlayer使用Draw实现交互式绘制线段
  10. CentOS中配置Mysql表名忽略大小写以及提示:Caused by: org.quartz.impl.jdbcjobstore.LockException: Failure obtaining d