You may not have a SERIAL column but don't forget about the unseen-but-always-there ROWID column ..... could be just what you're looking for.
I usually approach the "identify duplicates" problem by comparing a table to itself using table aliases & the ROWID. You have columns that identify the uniqueness of a row (perhaps there's an index based on these values) & other columns that you wish to include in the WHERE criteria so perhaps you can start with / build on this:
Assume that col1, col2, and col3 form the uniqueness
Select unique a.col1, a.col2, a.col3, a.col4, a.col5
from table1 a,
table1 b
where a.col1 = b.col1 and
a.col2 = b.col2 and
a.col3 = b.col3 and
a.col4 = b.col4 and
a.col5 = b.col5 and
a.ROWID <> b.ROWID