广告
返回顶部
首页 > 资讯 > 数据库 >MySQL模糊查询的三种方式
  • 495
分享到

MySQL模糊查询的三种方式

mysqlmybatisjava 2023-09-01 16:09:19 495人浏览 安东尼
摘要

文章目录 一、Mybatis常用模糊查询方法1.使用concat("%",#{name},"%")2.使用'%${name}%'3.使用"%"#{name}"%"总结:

文章目录

一、mybatis常用模糊查询方法

  • 直接使用 % 字符串拼接,如 ‘%’#{name}‘%’ 或 “%”#{name}“%”,单引号或双引号都可以。
  • 使用’%${name}%',会有sql注入危险
  • 使用函数concat拼接concat(“%”,#{name},“%”)

1.使用concat(“%”,#{name},“%”)

UserMapper.xml文件:

 <select id="selectUsersByCondition" resultType="qin.com.entity.Users" parameterType="Users">        select * from users        <where>            <if test="name != null and name != ''">                                and name like concat("%",#{name},"%")            if>            <if test="sex != null and sex != ''">                and sex = #{sex}            if>            <if test="birthday != null and birthday != ''">                and birthday = #{birthday}            if>            <if test="createTime != null and createTime != ''">                and createTime>=#{createTime}            if>            <if test="updateTime != null and updateTime != ''">                and updateTime <= #{updateTime}            if>        where>        order by id desc    select>

Test测试代码

@Test    public void testSelectUsersByCondition() {        ApplicationContext applicationContext = new ClassPathXmlApplicationContext("applicationContext.xml");        UsersService usersService =(UsersService) applicationContext.getBean("usersService");        Users users = new Users();        users.setName("小");        List<Users> list = usersService.selectUsersByCondition(users);        list.forEach(users1 -> System.out.println("根据条件查询用户信息:"+users1));    }

输出结果:
查询语句
==> Preparing: select * from users WHERE name like concat(“%”,?,“%”) order by id desc
==> Parameters: 小(String)
在这里插入图片描述

2.使用’%${name}%’

UserMapper.xml文件:

 <if test="name != null and name != ''">      and name like '%${name}%' if>

输出结果:
==> Preparing: select * from users WHERE name like ‘%小%’ order by id desc
==> Parameters:
在这里插入图片描述

3.使用"%“#{name}”%"

<if test="name != null and name != ''">   and name like "%"#{name}"%"if>

输出语句:
==> Preparing: select * from users WHERE name like “%”?“%” order by id desc
==> Parameters: 小(String)

在这里插入图片描述

总结

推荐使用第一和第三种方式

来源地址:https://blog.csdn.net/qq_43634655/article/details/126212894

您可能感兴趣的文档:

--结束END--

本文标题: MySQL模糊查询的三种方式

本文链接: https://www.lsjlt.com/news/389035.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • MySQL模糊查询的三种方式
    文章目录 一、Mybatis常用模糊查询方法1.使用concat("%",#{name},"%")2.使用'%${name}%'3.使用"%"#{name}"%"总结: ...
    99+
    2023-09-01
    mysql mybatis java
  • Mybatis模糊查询Like的三种方式
    在实际项目中,我们会经常对数据做一些模糊查询的操作,这时候就需要利用到 like 字段,那么在Mybatis中,有哪些方式可以实现模糊查询呢?这里就简单的介绍下:Mybatis模糊查询Like的三种方式,如果对你有帮助,码文不易,请一键...
    99+
    2023-08-30
    mybatis mysql 数据库 模糊查询 spring boot
  • Mysql模糊查询有哪几种方式
    不知道大家之前对类似Mysql模糊查询有哪几种方式的文章有无了解,今天我在这里给大家再简单的讲讲。感兴趣的话就一起来看看正文部分吧,相信看完Mysql模糊查询有哪几种方式你一定会有所收获的。  &...
    99+
    2022-10-18
  • Android sqlite--模糊查询数据库数据的三种方式
      android应用开发中常常需要记录一下数据,而在查询的时候如何实现模糊查询呢?很少有文章来做这样的介绍,所以这里简单的介绍下三种sqlite的模糊查询方式,直接上代码...
    99+
    2022-06-06
    数据 SQLite 数据库 Android
  • MyBatis模糊查询的几种实现方式
    大家好呀,我是柚子,今天这篇文章总结MyBatis模糊查询的几种实现方式~ 文章目录 前言一、模糊查询的几种实现方式1.concat函数和#{}拼接的方式2.%和${}拼接的方式3.concat函数和${}拼接的方式4.||和...
    99+
    2023-08-18
    mybatis java spring boot
  • Mybatis-模糊查询的俩种方法
    方法一: 使用CONCAT(like concat) like concat (参数一,参数二,参数三):用于模糊查询,不推荐直接用like,所以用concat连接 1.参数一: 第一个基本上用 ‘%’ 2.参数二: 传入的参...
    99+
    2023-09-08
    mysql 数据库
  • 关于MyBatis模糊查询的几种实现方式
    目录一、模糊查询的几种实现方式1.concat函数和#{}拼接的方式2.%和${}拼接的方式3.concat函数和${}拼接的方式4.||和#{}拼接的方式5.建议使用的方式二、用m...
    99+
    2023-05-18
    MyBatis查询 MyBatis模糊查询
  • Mysql实现模糊查询的两种方式(like子句 、正则表达式)
    目录前言语法like子句语法示例正则表达式语法说明:示例总结通常在实际应用中,会涉及到模糊查询的需求,查询在 mysql 中使用 SQL SELECT 命令来读取数据,有条件的查询可以在 SELECT 语句中使用...
    99+
    2022-09-30
  • Mysql实现模糊查询的两种方式(like子句 、正则表达式)
    目录前言语法like子句语法示例正则表达式语法说明:示例总结通常在实际应用中,会涉及到模糊查询的需求,查询在 MySQL 中使用 SQL SELECT 命令来读取数据,有条件...
    99+
    2022-11-13
  • mybatis 使用concat 模糊查询方式
    目录使用concat 模糊查询本举例注意模糊查询使用concat('%',#{str},'%')出错使用concat 模糊查询 <se...
    99+
    2022-11-12
  • MySQL三种关联查询方式是什么
    这篇文章主要讲解了“MySQL三种关联查询方式是什么”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“MySQL三种关联查询方式是什么”吧!看看下面三个关联查询...
    99+
    2022-10-19
  • Mysql---子查询的三种查询方式( 表子查询,条件子查询,列中子查询)
    mysql子查询 子查询分为: 列中子查询 单列单行表子查询 必须有别名条件子查询 单行单列 多行单列 下列示例表结构: grade表: result表: student表: subject表:...
    99+
    2023-09-04
    mysql sql 数据库
  • mysql去重查询的三种方法
    文章目录 前言一、插入测试数据二、剔除重复数据方法1.方法一:使用distinct2.方法二:使用group by3.方法三:使用开窗函数 总结 前言 数据库生成环境中经常会遇到表中有重复的数据,或者进行关联过程中产生重复...
    99+
    2023-08-16
    mysql 数据库
  • 解决mysql模糊查询索引失效问题的几种方法
    我们在使用like %通配符时常常会引起索引失效的问题。 这里,我们讨论一下like使用%的几种情况: 下列例子用到的索引(VC_STUDENT_NAME) 一、like ‘xx...
    99+
    2022-11-12
  • MySQL的LIKE查询为何也叫模糊查询
    下文给大家带来关于MySQL的LIKE查询为何也叫模糊查询,感兴趣的话就一起来看看这篇文章吧,相信看完MySQL的LIKE查询为何也叫模糊查询对大家多少有点帮助吧。      ...
    99+
    2022-10-18
  • Mybatis mysql模糊查询方式(CONCAT多个字段)及bug
    目录Mybatis mysql模糊查询及bug解决方案:一解决方案:二mybatis多个字段如何模糊查询一个值Mybatis mysql模糊查询及bug 先看下如下xml SELE...
    99+
    2022-11-13
  • mysql中的模糊查询方法怎么使用
    在MySQL中,可以使用LIKE操作符进行模糊查询。1. 使用通配符%:该通配符表示任意字符的任意数量。例如,要查找以 "abc" 开头的所有记录,可以使用以下查询语句:```sqlSELECT * FROM table_nam...
    99+
    2023-08-09
    mysql
  • mysql中like % %模糊查询的实现
    1,%:表示任意0个或多个字符。可匹配任意类型和长度的字符,有些情况下若是中文,请使用两个百分号(%%)表示。 比如 SELECT * FROM [user] WHERE u_name LIKE ...
    99+
    2022-05-27
    mysql like % %模糊查询 mysql like模糊查询
  • MySQL模糊查询语法的用法
    本篇内容主要讲解“MySQL模糊查询语法的用法”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“MySQL模糊查询语法的用法”吧!MySQL提供标准的SQL模式匹配...
    99+
    2022-10-18
  • vue和js中实现模糊查询方式
    目录vue和js实现模糊查询如何实现?方法1方法2方法3正则表达式实现模糊查询vue和js实现模糊查询 先来看效果图 这种数据量少的场景适用于前端实现模糊查询 如何实现? <...
    99+
    2022-11-13
    vue 模糊查询 js 模糊查询 vue实现模糊查询
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作