DELETE FROM tablename WHERE id IN (SELECT id FROM (SELECT id, row_number() over (partition BY column1,column2,column3 ORDER BY id) AS rnum FROM tablename) t WHERE t.rnum > 1)