merge into

mybatis批量处理 

// 入参类型为List<UserInfo>;不存在则新增T_USERINFO;已存在则不做处理
<insert id="noexistThenBatInsert" parameterType="java.util.List">
	MERGE INTO t_userinfo t1
	USING (
	<foreach collection="list" item="item" index="index" separator="union" >
		select
			#{item.id,jdbcType=VARCHAR} ID,
			#{item.username,jdbcType=VARCHAR} USERNAME,
			#{item.displayName,jdbcType=VARCHAR} DISPLAYNAME,
			#{item.email,jdbcType=VARCHAR} EMAIL,
			#{item.gender,jdbcType=VARCHAR} GENDER,
			#{item.mobile,jdbcType=VARCHAR} MOBILE,
			#{item.description,jdbcType=VARCHAR} DESCRIPTION,
			#{item.ifAppUser,jdbcType=VARCHAR} IFAPPUSER,
			#{item.password,jdbcType=VARCHAR} PASSWORD,
			1 STATUS,
			'1' INSTID
		from dual
	</foreach>) t2
	ON (
-- 		t1.ID =  t2.ID  and
	t1.USERNAME = t2.USERNAME
	)
-- 		WHEN MATCHED THEN
-- 		UPDATE SET t.CREATE_TIME = t1.CREATE_TIME
	WHEN NOT MATCHED THEN
	INSERT
	(ID, USERNAME, DISPLAYNAME, EMAIL, GENDER, MOBILE, DESCRIPTION,IFAPPUSER, PASSWORD, STATUS, INSTID)
	VALUES
	(t2.ID, t2.USERNAME, t2.DISPLAYNAME, t2.EMAIL, t2.GENDER, t2.MOBILE, t2.DESCRIPTION, t2.IFAPPUSER, t2.PASSWORD, t2.STATUS, t2.INSTID)
</insert>

-----------------以下参考链接

merge into 的用法
https://blog.csdn.net/weixin_44657888/article/details/124591434

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值