Information générale
Catégorie:
Base de données, Tables, Vues, Index et syntaxe SQL
Bruce,
>select * from table1;
where keyfield NOT IN;
(select keyfield from table2)
>is not optimizable, and is extremely slow (about 15 minutes or more) for each query. I have tried a SCAN/SEEK, but it is at least as slow or worse, since you're looking for unique keys that don't exist, and therefore must hit every record.
Try using a left join.
select * from table1 left join table2 on table1.keyfield = table2.keyfield
where isnull(table2.keyfield)
This will return only the records from table1 where there is no match in table2.
Cheers
Steve Lea
Précédent
Suivant
Répondre
Voir le fil de ce thread
Voir le fil de ce thread à partir de ce message seulement
Voir tous les messages de ce thread
Voir tous les messages de ce thread à partir de ce message seulement