merge into cu_bonus_expand ce using ( select * from( select #{item.pkId} pk_id,#{item.dayAchieve,jdbcType=NUMERIC} day_achieve,#{item.dayBonus,jdbcType=NUMERIC} day_bonus, #{item.yesDayRatio,jdbcType=NUMERIC} yes_day_ratio,#{item.curDayRatio,jdbcType=NUMERIC} cur_day_ratio, #{item.monthAchieve,jdbcType=NUMERIC} month_achieve,#{item.monthBonus,jdbcType=NUMERIC} month_bonus, #{item.monthRatio,jdbcType=NUMERIC} month_ratio,#{item.dayRepAchieve,jdbcType=NUMERIC} day_rep_achieve, #{item.dayRepBonus,jdbcType=NUMERIC} day_rep_bonus,#{item.curDayRepRatio,jdbcType=NUMERIC} cur_day_rep_ratio from dual ) ) b on (ce.pk_id=b.pk_id) when matched then update set ce.day_achieve=b.day_achieve,ce.day_bonus=b.day_bonus,ce.yes_day_ratio=b.yes_day_ratio, ce.cur_day_ratio=b.cur_day_ratio,ce.month_achieve=b.month_achieve, ce.month_bonus=b.month_bonus,ce.month_ratio=b.month_ratio, ce.day_rep_achieve=b.day_rep_achieve,ce.day_rep_bonus=b.day_rep_bonus, ce.cur_day_rep_ratio=b.cur_day_rep_ratio truncate table cu_member_repeat_bonus