ROWID
ist die Pseudospalte von Oracle, die die Adresse einer bestimmten Zeile enthält. Es lässt die Datenbank Zeilen finden. Sie sehen es normalerweise nicht in der Tabellenstruktur, aber es ist da und bleibt verborgen. Das heißt aber nicht, dass man es nicht benutzen kann :-)
Ihre DELETE-Anweisung entfernt jede Zeile aus der Tabelle SALES_DETAILS das ist ein Duplikat basierend auf txt_id, customer_id
Paar, genau wie du erwähnt hast. Das bedeutet also, dass Duplikate entfernt werden, aber die Zeile mit dem höchsten Zeilen-ID-Wert innerhalb der Gruppe gespeichert wird.
Bitte schauen Sie in der Dokumentation nach für weitere Informationen.