sql语句批量更新的简单写法

最近需要批量更新一批数据,需要用到批量更新的方式,看了一点动态sql,写了个这个,虽然性能不算很高,勉强能用,日后有机会在把case when的高性能sql研究一下

传入的是个map,map里面放着一个list.

<update id="generalledgerDao_updateGl" parameterType="map">
	    <foreach collection="updateList" item="item" index="index" separator=";">
		 UPDATE account_generalledger SET initialAmount = #{item.initialAmount,jdbcType=DECIMAL},
		 		debit = #{item.debit,jdbcType=DECIMAL},
		 		credit = #{item.credit,jdbcType=DECIMAL},
		 		totalAmount = #{item.totalAmount,jdbcType=DECIMAL},
				initialFC = #{item.initialFC,jdbcType=DECIMAL},
				debitFC = #{item.debitFC,jdbcType=DECIMAL},
				creditFC = #{item.creditFC,jdbcType=DECIMAL},
				totalFC = #{item.totalFC,jdbcType=DECIMAL},
				initialNum = #{item.initialNum,jdbcType=DECIMAL},
				debitNum = #{item.debitNum,jdbcType=DECIMAL},
				creditNum = #{item.creditNum,jdbcType=DECIMAL},
				totalNum = #{item.totalNum,jdbcType=DECIMAL},
				updateUserCode = #{updateUserCode,jdbcType=VARCHAR},
				updateTime = SYSDATE() 
		 WHERE companyId = #{companyId,jdbcType=VARCHAR} 
		 AND subjectId = #{item.subjectId,jdbcType=INTEGER} 
		 AND periodId = #{item.periodId,jdbcType=INTEGER}
	   </foreach>
	</update>

 

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值