Plateforme Level Extreme
Abonnement
Profil corporatif
Produits & Services
Support
Légal
English
How to check two files for record duplication
Message
De
21/06/2010 11:38:03
 
 
Information générale
Forum:
Visual FoxPro
Catégorie:
Codage, syntaxe et commandes
Versions des environnements
Visual FoxPro:
VFP 9 SP1
Divers
Thread ID:
01469886
Message ID:
01469900
Vues:
25
>>Bank transactions are downloaded as text file, including account balance after each transaction. They are moved to temporary dbf file and consolidated into historical file, checking for no duplicates and balance correctness.
>>
>>The check for duplicates is done before appending to historical file. First cut was to compare concatenation of all fields in new transactions to similar concatenation of fields in historical file:
>>
>>
>>SELECT * ;
>>  FROM BanMov ;
>> WHERE DTOS(dTraBan)+cRefBan+cTipTraBan+cDescBan+ ;
>> 	TRANSFORM(nDebitBan,'9999999.99')+TRANSFORM(nCreditBan,'9999999.99') ;
>> 	NOT IN (SELECT DTOS(dTraBan)+cRefBan+cTipTraBan+cDescBan ;
>> 		          +TRANSFORM(nDebitBan,'9999999.99')+TRANSFORM(nCreditBan,'9999999.99') ;
>> 		FROM DacBanMov) ;
>>  INTO TABLE NoDups
>>
>>
>>This is *very* slow.
>>
>>Any suggestions an efficient way to guarantee no duplicates?
>>
>>TIA,
>>
>>Alex
>
>Do you have index with the exact expression in both tables? You can also change NOT IN to NOT EXISTS
>
>If you don't have an index, may be you can check each field individually (with NOT EXISTS).

I think it was identical, Naomi, but will try again.

Alex
Précédent
Suivant
Répondre
Fil
Voir

Click here to load this message in the networking platform