在动态sql的使用where时,if标签判断中,如果实体类中的某一个属性是String类型,那么就可以这样来判断连接语句:

Posted King-D

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在动态sql的使用where时,if标签判断中,如果实体类中的某一个属性是String类型,那么就可以这样来判断连接语句:相关的知识,希望对你有一定的参考价值。

在动态sql的使用where时,if标签判断中,如果实体类中的某一个属性是String类型,那么就可以这样来判断连接语句:

 

如果是String类型的字符串进行判空的时候:

<if test="inspectOrg != null and inspectOrg != ‘‘">
INSPECT_ORG = #{inspectOrg}
</if>

但是如果是实体类中的Integer类型,就是去掉空字符串的判断:

<if test="inspectTaio != null">
AND INSPECT_TAIO = #{inspectTaio}
</if>

否则会被空字符串判定条件下,导致添加不上需要连接的条件查询语句,

最后导致执行的sql,会在执行的时候,使用0的时候会不能执行

以上是关于在动态sql的使用where时,if标签判断中,如果实体类中的某一个属性是String类型,那么就可以这样来判断连接语句:的主要内容,如果未能解决你的问题,请参考以下文章

mybatis框架注解对象怎么在if 标签判断

MyBatis—07—DQL: 动态SQL查询;

动态SQL (if , choose (when, otherwise) , trim (where, set) , set, foreach)

SQL动态语句 where和if标签的使用

mybatis入门篇3 ---- 动态sql,缓存,以及分页jar包的使用

sql中where 之后怎么加if条件判断