笔记:MyBatis动态SQL

本文介绍MyBatis中动态SQL的使用技巧,包括if、trim、where、set、choose、when、otherwise及foreach等元素的应用场景与实现方法。特别针对集合迭代、条件判断等常见需求提供了详细的解决方案。

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

1.完成多条件查询等逻辑
实现
用于实现动态SQL的元素主要有

if

trim

where set choose(when、otherwise)

foreach

2.if(判断参数):实现简单的条件判断


3.where
简化SQL语句中where条件判断
智能处理and和or
4.更新用户表数据时,若某个参数为null时,会导致更新错误    如何解决:if+
set


5.
prefix:表示前缀:  作用是通过自动识别是否有返回值,在trim包含的内容上加上前缀

suffix 后缀:    作用是通过自动识别是否有返回值,在trim包含的内容上加上后缀
prefixOverrides:  对于trim包含的首部进行指定内容的删除

suffixOverrides:对于trim包含的尾部进行指定内容的删除


6.
foreach
迭代一个集合,通常用于in条件   in(1,2,3,4,5)属性
         
item:集合里的每一个元素,进行迭代的别名    
	index:  指定一个名字,表示每次迭代的位置  ,可以不指定    
	collection:必须指定                      list  :入参的时候是list集合,指定的就是list
           
array:  入参的时候是数组,  指定的值是array
           
map-key:   是map,   指定的是map的key
    
open :表示以什么开始,主要是在in语句里  比如(    
    separator:每次迭代的时候,迭代之间,以什么符号进行间隔,in语句是以  ,    
     close:以什么结束 )

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

悟空非空也

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值