mybatis 批量修改

     <update id="updateKszdy" parameterType="com.jykj.yxxt.api.model.zsgl.importksxxb.Ksxxb">
    update t_ks_ksxxb
    set  
    <foreach collection="list" item="item" index="index"
        separator=" " open="" close="">
        <if test="item.zdy1!=null">
        <if test="index == 0">
        zdy1 =  case ksid
        </if>
        when #{item.ksid} then #{item.zdy1}
        <if test="index==list.size()-1">
        end
        </if>
        </if>
    </foreach>
    <foreach collection="list" item="item" index="index"
        separator=" " open="" close="">
         <if test="item.zdy1!=null and item.zdy2!=null">
         <if test="index == 0">
        ,zdy2= case ksid
        </if>
         when #{item.ksid} then #{item.zdy2}
        <if test="index==list.size()-1">
        end
        </if>
        </if>
         <if test="item.zdy1==null and item.zdy2!=null">
         <if test="index == 0">
        zdy2= case ksid
        </if>
         when #{item.ksid} then #{item.zdy2}
         <if test="index==list.size()-1">
         end
        </if>
        </if>
    </foreach>
    <foreach collection="list" item="item" index="index"
        separator=" " open="" close="">
         <if test="(item.zdy1!=null or item.zdy2!=null) and item.zdy3!=null">
          <if test="index == 0">
        ,zdy3= case ksid
        </if>
         when #{item.ksid} then #{item.zdy3}
        <if test="index==list.size()-1">
        end
        </if>
        </if>
        <if test="item.zdy1==null and item.zdy2==null and item.zdy3!=null">
        <if test="index == 0">
        zdy3= case ksid
        </if>
         when #{item.ksid} then #{item.zdy3}
       <if test="index==list.size()-1">
        end
        </if>
        </if>
    </foreach>
    where ksid in
    <foreach collection="list" index="index" item="item"
        separator="," open="(" close=")">
        #{item.ksid,jdbcType=BIGINT}
    </foreach>
  </update>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值