http://www.leftso.com/blog/765.html
不过有他的替代 choose,写法如下:
<choose>
<when test="params!=null">
right JOIN
</when>
<otherwise>
LEFT JOIN
</otherwise>
</choose>
复制 <choose> <when test="params!=null"> right JOIN </when> <otherwise> LEFT JOIN </otherwise> </choose>
以上即可实现 if else 逻辑
https://www.cnblogs.com/buzheng/p/12485464.html
MyBatis中if - else if - else 的使用
有表user(id, name, state, sex, age)
1、单个 if - else 使用。
根据状态不同进行查询
<select id="selectUserByState" resultType="com.bz.model.entity.User">
SELECT
*
FROM
user
WHERE
1=1
<choose>
<when test="state == 1">
AND name = #{name1}
</when>
<otherwise>
AND name = #{name2}
</otherwise>
</choose>
</select>
2、多个if -else if -else的使用。
<select id="selectUserByState" resultType="com.bz.model.entity.User">
SELECT
*
FROM
user
WHERE
1=1
<choose>
<when test="state == 1">
AND name = #{name1}
</when>
<when test="state == 2">
AND name = #{name2}
</when>
<otherwise>
AND name = #{name3}
</otherwise>
</choose>
</select>
如有不对之处希望大家指点。共同进步,谢谢!
https://www.cnblogs.com/a8457013/p/8033263.html
mybatis if-else(写法)
mybaits 中没有else要用chose when otherwise 代替
范例一
<!--批量插入用户-->
<insert id="insertBusinessUserList" parameterType="java.util.List">
insert into `business_user` (`id` , `user_type` , `user_login` )
values
<foreach collection="list" index="index" item="item" separator=",">
<trim prefix="(" suffix=")" suffixOverrides=",">
<choose>
<when test="item.id != null and item.id !=''">
#{item.id,jdbcType=CHAR},
</when>
<otherwise>
'',
</otherwise>
</choose>
<choose>
<when test="item.userType != null and item.userType !=''">
#{item.userType,jdbcType=VARCHAR},
</when>
<otherwise>
'',
</otherwise>
</choose>
</trim>
</foreach>
</insert>
其中choose为一个整体
when是if
otherwise是else
范例二:
<select id="selectSelective" resultMap="xxx" parameterType="xxx">
select
<include refid="Base_Column_List"/>
from xxx
where del_flag=0
<choose>
<when test="xxx !=null and xxx != ''">
and xxx like concat(concat('%', #{xxx}), '%')
</when>
<otherwise>
and xxx like '**%'
</otherwise>
</choose>
</select>
下面就是MyBatis中的if…else…表示方法
<choose>
<when test="">
//...
</when>
<otherwise>
//...
</otherwise>
</choose>
分类:mybatis
标签:mybatis