Withdata Software

Remove duplicate rows in Oracle

How to delete all duplicate rows and leave only one of them, in Oracle?

DELETE FROM my_table
WHERE rowid not in
(SELECT MIN(rowid)
FROM my_table
GROUP BY column1, column2, column3...) ;

Where column1, column2, etc. is the key you want to use.

Relative links:

Remove duplicate rows in MySQL

Remove duplicate rows in SQL Server

Some Oracle tools you can try: https://www.withdata.com/oracle/