mybatis 没有else标签的替代写法

使用when、otherwise可以实现类似if else的效果

<insert id="insertTest" parameterType="com.demo.entity.TBtest">
        INSERT INTO table
        (
        xx,
        xxx,
        xx,
        xx
        )
        <choose>
            <when test="sort != null">
                VALUES
                (
                #{xxx,jdbcType=VARCHAR}, #{xxx,jdbcType=VARCHAR},#{xxx,jdbcType=VARCHAR},#{xxx,jdbcType=INTEGER}
                )
            </when>
            <otherwise>
                SELECT
                #{xxx,jdbcType=VARCHAR}, #{xxx,jdbcType=VARCHAR},#{xx,jdbcType=VARCHAR},
                ifnull(MAX(xx),1) + 1
                FROM table
                WHERE xxx= #{xxx,jdbcType=VARCHAR}
            </otherwise>
        </choose>
    </insert>

 

posted @ 2020-11-13 15:38  林被熊烟岛  阅读(287)  评论(0编辑  收藏  举报