mysql mybatis模糊查询语句_详解MyBatis模糊查询LIKE的三种方式
模糊查询也是数据库SQL中使用频率很高的SQL语句,使用MyBatis来进行更加灵活的模糊查询。
直接传参法
直接传参法,就是将要查询的关键字keyword,在代码中拼接好要查询的格式,如%keyword%,然后直接作为参数传入mapper.xml的映射文件中。
public void selectBykeyWord(String keyword) {
String id = "%" + keyword + "%";
String roleType = "%" + keyword + "%";
String roleName = "%" + keyword + "%";
userDao.selectBykeyWord(id,roleName,roleType);
}
在Dao层指定各个参数的别名
List selectBykeyWord(@Param("id") String id,@Param("roleName") String roleName,@Param("roleType") String roleType);
SELECT
*
FROM
t_role
WHERE
role_name LIKE #{roleName}
OR id LIKE #{id}
OR role_type LIKE #{roleType}
执行出来的SQL语句:
SELECT
*
FROM
t_role
WHERE
role_name LIKE '%why%'
OR id LIKE '%why%'
OR role_type LIKE '%why%';
CONCAT()函数
MySQL的 CONCAT()函数用于将多个字符串连接成一个字符串,是最重要的mysql函数之一。
CONCAT(str1,str2,...)
List selectBykeyWord(@Param("keyword") String keyword);
SELECT
*
FROM
t_role
WHERE
role_name LIKE CONCAT('%',#{keyword},'%')
OR
id LIKE CONCAT('%',#{keyword},'%')
OR
role_type LIKE CONCAT('%',#{keyword},'%')
Mybatis的bind
List selectBykeyWord(@Param("keyword") String keyword);
SELECT
*
FROM
t_role
WHERE
role_name LIKE #{pattern}
OR
id LIKE #{pattern}
OR
role_type like #{pattern}
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。
mysql mybatis模糊查询语句_详解MyBatis模糊查询LIKE的三种方式相关推荐
- vue单文件props写法_详解Vue 单文件组件的三种写法
详解Vue 单文件组件的三种写法 JS构造选项写法 export defaul { data, methods, ...} JS class写法 @Component export default c ...
- python解释器在哪里_详解查看Python解释器路径的两种方式
进入python的安装目录, 查看python解释器 进入bin目录 # ls python(看一下是否有python解释器版本) # pwd (查看当前目录) 复制当前目录即可 1. 通过脚本查看 ...
- sh执行文件 参数传递_详解shell中脚本参数传递的两种方式
方式一:$0,$1,$2.. 采用$0,$1,$2..等方式获取脚本命令行传入的参数,值得注意的是,$0获取到的是脚本路径以及脚本名,后面按顺序获取参数,当参数超过10个时(包括10个),需要使用${ ...
- MyBatis中模糊查询LIKE的三种方式
在操作数据库时,查询是最常用的语句,模糊查询也是数据库SQL中使用频率很高的SQL语句,利用MyBatis框架来进行更加灵活的模糊查询,有如下三种方式: (1)直接传参法 直接传参法,就 ...
- js求两圆交点_详解js实现线段交点的三种算法
本文讲的内容都很初级, 主要是面向和我一样的初学者, 所以请各位算法帝们轻拍啊 引用 已知线段1(a,b) 和线段2(c,d) ,其中a b c d为端点, 求线段交点p .(平行或共线视作不相交) ...
- MyBatis模糊查询like的三种方式
MyBatis可以灵活的模糊查询 方法一 手动拼接 public void select1(String name) {String name = "%" + name+ &quo ...
- python表单提交的两种方式_详解flask表单提交的两种方式
一.通用方式 通用方式就是使用ajax或者$.post来提交. 前端html ... data Submit   将操作绑定 $(document).ready(function() ...
- 设置ngxin服务器虚拟主机,详解Nginx 虚拟主机配置的三种方式(基于端口)
Nginx配置虚拟主机支持3种方式:基于IP的虚拟主机配置,基于端口的虚拟主机配置,基于域名的虚拟主机配置. 2.Nginx基于端口的虚拟主机配置 如一台服务器只有一个IP或需要通过不同的端口访问不同 ...
- 详解vue路由传参的三种方式
在我们开发vue项目的时候,路由传参几乎是我们必须要用到的,一般出现场景是,当我们点击某个组件的某个按钮时跳转到另一个组件中,并携带参数,便于第二个组件获取数据.下面我就来说说vue路由传参的三种方式 ...
最新文章
- windows10 下 vscode + cmake 编译 Qt6 代码
- 服务器怎么禁止iis静态文件,如何禁止IIS缓存静态文件
- 关于链表中经常用到的二级指针
- [原][osgearth]osgearthElvation中的一帧
- 大数据开发笔记(六):Flume基础学习
- [源码剖析]tinyhttpd-C语言实现最简单的HTTP服务器
- 自定义view——环形进度条,带progress值
- 一个android本地txt阅读器的思路与实现
- Spring STS 修改启动Java VM
- 怎么开启远程重启服务器,怎么正确重启服务器
- 全功能开源的企业级安全主动攻击型蜜罐钓鱼系统 HFish,你很有必要部署一套!...
- JAVA - 手机扫描二维码,页面响应(不是扫码登录)
- 剖析数据结构线性表,代码实现,分文件编写
- 磕技术、筑平台,浪潮存储如何持续破局?
- 关于java中的setOut()方法
- 5种小型设备上深度学习推理的高效算法
- 小程序(之音乐播放器实现思路)
- 圣诞树小程序,动态效果,八个小程序
- 控制手柄分体式滑环在船用起重机中的运用
- logstash中无法解析nginx日志中的\x09类似字符导致服务停止
热门文章
- leetcode 148. Sort List | 148. 排序链表(最优解归并排序,O(1)空间)
- 左神算法:分别用递归和非递归方式实现二叉树先序、中序和后序遍历(Java版)
- 【Python】自定义排序函数 - 示例
- 【PAT甲级 排序】1096 Consecutive Factors (20 分) C++ 全部AC
- 深入理解LSM-Tree
- JMM和底层实现原理
- java并发之线程封闭(二)
- C++学习笔记:(六)public、protected、private继承详解
- overflow-x理解_前端系列学习笔记
- [IDEA] 异常 Configuration is still incorrect. Do you want to edit it again? Error: module not specifie