MERGE INTO tableName a
USING (select count(1) c from tableName where user_code=#{item.user_code} and meter_code = #{item.meter_code}) b
ON (b.c >0)
WHEN MATCHED THEN
UPDATE
<trim prefix="SET" suffixOverrides=",">
<if test="item.bar_code != null">bar_code=#{item.bar_code},</if>
</trim>
WHERE user_code=#{item.user_code} and meter_code = #{item.meter_code}
WHEN NOT MATCHED THEN
insert
<trim prefix="(" suffix=")" suffixOverrides=",">
<if test="item.bar_code != null">bar_code,</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="item.bar_code != null">#{item.bar_code},</if>
</trim>
</foreach>
mybatis oracle MERGE 利用oracle原理实现saveOrUpdate
最新推荐文章于 2022-11-27 22:24:47 发布