Karen,
Thinking on this: If the column(s) used to determine duplicates is (are) indexed and in the collist, then R:BASE will be able to locate those rows that need to be deleted much more quickly. If some of the columns being used to compare rows are not indexed but some are, it still should be quicker than if R:BASE reads a row then looks through every subsequent row to determine if dupes exist. It would seem that even if you specify every column in the table in the collist, it might still be quicker since R:BASE can first determine duplicates based on indexes then compare the remaining values for each combination of indexed columns that are duped. But, I confess that all of the above is pure conjecture; I have no inside knowledge of how it actually works. Emmitt Dove Manager, Converting Applications Development Evergreen Packaging, Inc. [email protected] (203) 214-5683 m (203) 643-8022 o (203) 643-8086 f [email protected] From: [email protected] [mailto:[email protected]] On Behalf Of [email protected] Sent: Thursday, August 06, 2009 4:54 PM To: RBASE-L Mailing List Subject: [RBASE-L] - Re: Deleting dups Interesting ... You would think there would be tons of overhead to update the index file everytime one row is deleted ... I'll leave the indexes in there and maybe do a time comparison to see if there's any difference (although this is a 6.5 database so wouldn't be currently relevant). Karen About the DELETE DUPLICATES Command Use DELETE DUPLICATES to delete duplicate rows from a table. A duplicate row is a row where the values for each column are exactly the same as those in another row in the table. This command deletes all but the first row for each set of duplicate rows. DELETEDUPLICATES processes faster when the table contains an indexed column and the USING collist option is used. Rules for Column Deletion And I thought line “DELETE DUPLICATES processes faster when the table contains an indexed column and the USING collist option is used.” Was right. Sincerely, Paul D.

