MyBatis中动态SQL判断等值的方式
一般情况下在使用mybatis的动态SQL时,常用的是用来判空,如下:
<if test="userType != null and userType != ''"> <![CDATA[ and user_type = #{userType} ]]> </if>
有时会遇到判断条件是某一个值的时候执行特殊的sql条件或语句,如下:
1.数值型
示例如下:
<if test="userType != null and userType == 2"> <![CDATA[ and xxxx > 1 ]]> </if>
2.字符型
示例如下:
<if test="userType != null and userType == '2'.toString()"> <![CDATA[ and xxxx > 1 ]]> </if>
注意: 当条件判断值是字符,即字符串的时候,推荐使用'abc'.toString()方式, 或者使用 userType eq 2
的形式也可
3.拓展
大于小于的写法
原含义 | 代替写法 | 英文全称 | 用法 |
---|---|---|---|
< | < |
less than | a.score < '60' |
> | > |
greater than | a.score > '0' |
= | eq | equal | type eq 1 |
& | & |
||
’ | ' |
||
" | " |
第二种写法:
<if test="type eq 1 "> ( ssc.status= '2' OR ssc.exam_source = '4' ) </if>
分类:
MyBatis随笔
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· winform 绘制太阳,地球,月球 运作规律
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人