在学习mybatis的学习中,用到模糊查询的时候,发现直接拼接成‘%’#{description}'%'会报错,然后整理了三种模糊查询的SQL语句写法:

1.在传参的时候,就把参数拼接为"%"+#{description}+"%"  然后传到XML文件的SQL语句中,这样就避免了在SQL语句中拼接出错(在ORACLE数据库中或许会报“ORA-01722: 无效字符”错误,针对ORACLE可以修改成"%"||#{description}||"%")

2.使用SQL的concat函数 在SQL语句进行拼接,这样拼接的SQL语句也是符合要求的,如:

SELECT  *  FROM   MESSAGE  WHERE  DESCRIPTION  like  CONCAT(CONCAT('%',#{description}),'%');

3.使用${description}替换,#{description}就可以直接用'%${description}%',如:

SELECT  *  FROM   MESSAGE  WHERE  DESCRIPTION  like  '%${description}%';

上面三种方式中,以第二种为最,几乎无论什么情形都可以使用,而第一种和第三种都需要有一些前提条件才可以使用,不过在正常的工作中,几乎都可以使用到这三种方法。今天整理出来,也为大家以后再次遇到这种情况提供一点小小的帮助。

注:第三种方法不推荐大家使用,有可能会出现sql注入风险

Mybatis中使用oracle的模糊查询的SQL语句写法相关推荐

  1. MyBatis中字符串拼接实现模糊查询的sql

    //使用concat进行字符串拼接前缀% 和后缀%,实现模糊查询,会解决sqL注入的问题 like CONCAT('%',#{stockCode},'%') 转载于:https://www.cnblo ...

  2. java中sql模糊查询_模糊查询的sql语句(java模糊查询sql语句)

    模糊查询的sql语句(java模糊查询sql语句) 2020-07-24 11:06:02 共10个回答 假设表名为product,商品名为name,简界为remark.则可如下写:select[na ...

  3. MySQL基础(八):模糊查询的SQL语句、where条件查询、比较运算符查询、逻辑运算符查询、模糊查询、范围查询、空判断查询

    文章目录 where条件查询 1. where条件查询的介绍 2. 比较运算符查询 3. 逻辑运算符查询 4. 模糊查询 5. 范围查询 6. 空判断查询 7. 小结 where条件查询 学习目标 能 ...

  4. mybatis笔记之一次插入多条数据sql语句写法

    mybatis笔记之一次插入多条数据sql语句写法

  5. mybatis中使用mysql的模糊查询字符串拼接(like)

    方法一: <!-- 根据hid,hanme,grade,模糊查询医院信息--> 方法一: List<Hospital> getHospitalLike(@Param(" ...

  6. mybatis 中SQLServer 和 mysql 模糊查询 不同点

    mysql 只能使用函数like concat(#{field},':%'); 而SQLServer 可以使用字符串拼接:like #{field}+':%'. 模糊查询开头不使用通配符,索引是起作用 ...

  7. php中简单模糊查询的sql语句

    从topics表中查询字段subject与传进来的参数'$_POST['topic']进行比较模糊查询 设subject字段数据为:数学,英语,物理,化学,英文 $subject=$_POST['to ...

  8. 模糊查询和sql语句的拼接

    如下面图片所示:进行模糊查询 前端的页面代码:  注意:请选择那里的value="" 一定要写 <body><form action="SearchSt ...

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

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

最新文章

  1. 图1 ----节选CEC2015年中结果展示
  2. 发布我的第一个flex作品
  3. python 自动化-Python 接口自动化测试
  4. 什么是序列化?python pickle模块
  5. JSON.NET 简单的使用
  6. java 二维高斯_Java Random nextGaussian()用法及代码示例
  7. Java 文件流操作.,互联网 面试官 如何面试
  8. Mac DBeaver Client home is not specified for connection解决办法
  9. mysql 正则表达式 regExp
  10. OpenCV 安装配置 Jupyter Notebook
  11. 知识图谱顶刊综述 - (2021年4月) A Survey on Knowledge Graphs: Representation, Acquisition, and Applications
  12. 汉语言文学与茶2019EI会议论文的融合探析
  13. github不再通过验证密码方式push代码
  14. 思维导图 · B端业务的难点
  15. MySQL 出现数据库表被锁解决方案
  16. 【Git的学习笔记】老板让我用Git提交,但我还没学过Git
  17. 基于matlab指纹识别论文,毕业论文-基于Matlab的指纹识别
  18. 计算机能力用英语介绍自己的家庭,介绍我的家庭英语作文(精选10篇)
  19. c语言常见错误分析和程序调试,C语言中常见错误分析及程序调试
  20. 欧姆龙NJ/NX系列标签方式与西门子PLC之间通讯(基于IGT-DSER)

热门文章

  1. docker+Locust+Prometheus+Grafana实现性能监控平台
  2. html5 测试 iphone x,【苹果iPhoneX评测】贴膜解锁测试iPhone X表现不佳_苹果 iPhone X _手机评测-中关村在线...
  3. 百度平庸,不如学搜狗
  4. MATLAB巴特沃斯高通滤波图像
  5. 前端验证码之-滑动验证码
  6. 宏指令和数据的输入输出
  7. 周末动物园旅游计划书
  8. 外贸业务员如何寻找国外客户-跨境知道
  9. 除了阿里巴巴 雅虎还剩什么?
  10. centos7安装openssh