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.拓展
大于小于的写法

原含义 代替写法 英文全称 用法
< &lt; less than a.score &lt; '60'
> &gt; greater than a.score &gt; '0'
= eq equal type eq 1
& &amp;    
&apos;    
" &quot;    

第二种写法:

<if test="type eq 1 ">
( ssc.status= '2' OR ssc.exam_source = '4' )
</if>

 

posted @   酸菜鱼没有鱼  阅读(840)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
点击右上角即可分享
微信分享提示