-- 查找表中多余的重复记录,重复记录是根据单个字段来判断
select * from loan_collection_task where loan_case_id in (select loan_case_id from loan_collection_task group by loan_case_id having count(loan_case_id) >1)
-- 删除重复记录,只保留id字段值最大的记录
delete from loan_collection_task where loan_case_id not in (select maxid from (select max(id) as maxid from loan_collection_task group by loan_case_id) b)
-- 查找表中多余的重复记录(多个字段)
select * from (select *, concat(`loan_case_id` , loan_term_id, task_status, operation_date) as loancaseAndTaskstatus from `loan_collection_task`) as t where t.loancaseAndTaskstatus in (select loancaseAndTaskstatus from (select concat(`loan_case_id` , loan_term_id, task_status, operation_date) as loancaseAndTaskstatus from loan_collection_task) as tt group by loancaseAndTaskstatus having count(loancaseAndTaskstatus) > 1)
-- 删除表中多余的重复记录(多个字段),只保留id字段值最大的记录
delete from loan_collection_task where id not in (select maxId from (select MAX(id) as maxId, concat(`loan_case_id` ,task_status, operation_date) as loancaseAndTaskstatus from loan_collection_task group by loancaseAndTaskstatus) as t)