Сиротские Master-записи
Автор: David G. Wachtel
Как с помощью SQL найти записи таблицы, которых нет в другой
таблице?
Вот пример:
with PeopleHiddenForm.PersonQuery.SQL do begin
Add('Select P.Last, P.First, P.Middle, P."Suffix", P.KeyNo, COUNT(PersMemL.PersonKeyNo)');
Add('From Person P Left Outer Join ');
Add(' PersMemL PersMemL');
Add('On ((P.KeyNo = PersMemL.PersonKeyNo))');
Add('Group By P.Last, P.First, P.Middle, P.Suffix, P.KeyNo');
Add('Having ((Count(PersmemL.PersonKeyNo) = 0))');
|
Данный код позволяет связаться с таблицей (PersMemL), содержащей количество
ключей персональной записи и запись членства. Запрос возвращает имена персон,
которые не имеют записей членства.
На практике этот способ оказывается очень эффективным, по крайней мере, с
локальным SQL в таблицах Paradox.
|