02-Mybatis-模糊查询

本文详细介绍如何使用MyBatis实现根据用户名进行模糊查询的功能,包括针对不同数据库(如Mysql和Oracle)的SQL语句调整,以及在XML映射文件中编写相应的SQL语句。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

MyBatis实现根据用户名模糊查询用户

查询sql:

SELECT * FROM user WHERE username LIKE '%王%'

映射文件
在user.xml中添加select标签,编写sql:

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
										"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="test">
	<!--  需要注意的是 
	 如果数据库是Mysql 模糊查询是使用SELECT * FROM `user` WHERE username CONCAT(CONCAT('%', #{username}), '%');
	 如果数据库是Oracle 使用 SELECT * FROM `user` WHERE username'%' ||  #{username} || '%'
	 -->
	<select id="queryUserByUsername1" parameterType="string"
		resultType="cn.itcast.mybatis.pojo.User">
		SELECT * FROM `user` WHERE username CONCAT(CONCAT('%', #{username}), '%'); 
	</select>

</mapper>

使用FluentMybatis进行模糊查询非常方便。FluentMybatis提供了一种简洁的方式来构建复杂的业务SQL语句,包括模糊查询。通过使用FluentMybatis的API,你可以轻松地构造出包含模糊查询的SQL语句。在FluentMybatis中,你可以使用`like`方法来进行模糊查询。在构造查询条件时,你可以使用`like`方法指定要进行模糊匹配的段和模糊匹配的值。例如,如果你想要在名为`name`的段上进行模糊查询,你可以使用以下代码: ``` like("name").contains("关键字") ``` 其中,`like("name")`指定要在`name`段上进行模糊匹配,`contains("关键字")`指定模糊匹配的值为"关键字"。这样,FluentMybatis将会生成相应的模糊查询SQL语句。通过这种方式,你可以轻松地实现模糊查询的功能。FluentMybatis的这种设计使得代码逻辑和SQL逻辑紧密结合,避免了在Dao中组装查询操作的繁琐过程。因此,使用FluentMybatis进行模糊查询可以更加方便和简洁。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* [fluent-mybatis入门,更优雅的mybatis](https://blog.youkuaiyun.com/a19870822cp/article/details/119817238)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *3* [Fluent Mybatis、原生Mybatis,、Mybatis Plus 大对比,哪个更好用?](https://blog.youkuaiyun.com/j3T9Z7H/article/details/126736632)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值