* Prepare the table for the operation >SELECT tableWithDuplicates >ALTER TABLE ADD COLUMN lDuplicate L > >* Mark everything initially as a duplicate >REPLACE ALL lDuplicate WITH .T. > >* Create an index of unique records >INDEX ON my+Unique+Key+Fields UNIQUE TAG dupTemp > >* Mark every unique record as not being a duplicate (the nature of the INDEX ON command mandates that the UNIQUE records are top-most in row order) >REPLACE ALL lDuplicate WITH .F. > >* Remove the index >SET INDEX TO > >* The records which are marked lDuplicate = .T. are the second (and later) duplicates > >* Delete those records and then PACK, mark lDeleted = .T., or whatever... > >ALTER TABLE DROP COLUMN lDuplicate >DELETE TAG dupTemp >Sorry Rick,