MERGE INTO job_summary AS target
USING (
VALUES
(
#{item.namespaceId},
#{item.groupName},
#{item.businessId},
#{item.triggerAt},
#{item.systemTaskType},
#{item.successNum},
#{item.failNum},
#{item.failReason},
#{item.stopNum},
#{item.stopReason},
#{item.cancelNum},
#{item.cancelReason}
)
) AS source (namespace_id, group_name, business_id, trigger_at, system_task_type,
success_num, fail_num, fail_reason, stop_num, stop_reason, cancel_num, cancel_reason)
ON target.namespace_id = source.namespace_id
AND target.business_id = source.business_id
WHEN MATCHED THEN
UPDATE SET
target.success_num = source.success_num,
target.fail_num = source.fail_num,
target.fail_reason = source.fail_reason,
target.stop_num = source.stop_num,
target.stop_reason = source.stop_reason,
target.cancel_num = source.cancel_num,
target.cancel_reason = source.cancel_reason
WHEN NOT MATCHED THEN
INSERT (namespace_id, group_name, business_id, trigger_at, system_task_type,
success_num, fail_num, fail_reason, stop_num, stop_reason, cancel_num, cancel_reason)
VALUES (source.namespace_id, source.group_name, source.business_id, source.trigger_at, source.system_task_type,
source.success_num, source.fail_num, source.fail_reason, source.stop_num, source.stop_reason,
source.cancel_num, source.cancel_reason);