Plateforme Level Extreme
Abonnement
Profil corporatif
Produits & Services
Support
Légal
English
Eliminating duplicates
Message
Information générale
Forum:
Visual FoxPro
Catégorie:
Base de données, Tables, Vues, Index et syntaxe SQL
Divers
Thread ID:
00516123
Message ID:
00516334
Vues:
11
>If you need to remove the entirely identical records then what is wrong with :
>
>select * dist into newtable
>then rename and reindex?

That's an interesting idea. Few fields in the table should not be checked (RecNum is one for example). I can select into cursor, zap the original table and append from this cursor.

I'll think about it.


>
><<<<<<<<<<<<<<< your message below >>>>>>>>>
>
>Hi everyone,
>
>I have an application called De-Duper, which identifies duplicates in a table based on one field or combination of few fields. Once duplicates are identified, user can review them, combine, delete, edit, etc.
>
>My colleague, who was testing this application, made a suggestion: this application should identify complete duplicates (e.g. almost all fields should be identical), then delete all duplicate records except one.
>
>I have one solution in mind, but not sure, it's the best. Besides, it would not be Rushmore optimizable, so may take a long time.
>
>Ok, here is what I have in mind:
>
>Table has a RecNum Identifier field.
>
>1) Create a list of all fields, which should be checked (comma-delimited) in a string. This part is already done.
>
>2)
>lcStr='select *, count(*) as cnt_dups from BldMstr group by '+m.lcFieldList+ ;
> ' having cnt_dups>1 into cursor curCompleteDups'
> strtofile(m.lcStr, m.lcTempPrg)
> compile (m.lcTempPrg)
> do (m.lcTempPrg)
> delete (m.lcTempPrg)
>
>3) create similar string
> m.lcDelStr='field1=curCompleteDups.field1 and field2=curCompleteDups.field2"...
> lcStr='delete for '+m.lcDelStr+' and RecNum<>curCompleteDups.RecNum'
> create a temp program and execute it.
>Do you think, it's feassible? Or can you suggest a better approach?
>
>Thanks in advance.
If it's not broken, fix it until it is.


My Blog
Précédent
Suivant
Répondre
Fil
Voir

Click here to load this message in the networking platform