SQL to delete the duplicates in a table

后端 未结 3 1688
失恋的感觉
失恋的感觉 2021-01-14 13:08

I have a table transaction which has duplicates. i want to keep the record that had minimum id and delete all the duplicates based on four fields DATE, AMOUNT, REFNUMBER, PA

3条回答
  •  傲寒
    傲寒 (楼主)
    2021-01-14 13:47

    It would probably be more efficient to do something like

    DELETE FROM transaction t1
     WHERE EXISTS( SELECT 1
                     FROM transaction t2
                    WHERE t1.date = t2.date
                      AND t1.refnumber = t2.refnumber
                      AND t1.parentFolderId = t2.parentFolderId
                      AND t2.id > t1.id )
    

提交回复
热议问题