Сиротские Master-записи
{codecitation class=»brush: pascal; gutter: false;» width=»600px»}
Автор: 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.
{/codecitation}