Friday, July 17, 2015

Delete Duplicate rows from table

From this sql you can delete duplicate rows which can identified from specific columns

DELETE
FROM table_x
WHERE rowid IN
  (SELECT MAX(rowid)
  FROM table_x
  WHERE (column_a, column_b, column_c) IN
    (SELECT column_a, column_b, column_c
    FROM
      (SELECT column_a, column_b, column_c,
        COUNT(*)
      FROM table_x
      GROUP BY column_a, column_b, column_c
      HAVING COUNT(*) > 1
      )
    )
  GROUP BY column_a, column_b, column_c

  );

No comments:

Post a Comment