ник: snipe
ни чего не понял
однако если взять за основу прошлый пример, то
SELECT ТаблицаА.Номер_Договора,ТаблицаА.Сумма_Договора, a1.Поступление, iif(nz(a1.Поступление,0) - nz(ТаблицаА.Сумма_Договора,0)<0;1;0) as Индикатор_Оплаты
FROM ТаблицаА LEFT JOIN (SELECT ТаблицаВ.Номер_Договора, Sum(ТаблицаВ.Платеж) AS Поступление FROM ТаблицаВ GROUP ТаблицаВ.Номер_Договора) AS a1
ON ТаблицаА.Номер_Договора = a1.Номер_Договора
Where iif(nz(a1.Поступление,0) - nz(ТаблицаА.Сумма_Договора,0)<0,1,0)=1
функция nz() (про себя я ее называю Nет Zначения) позволяет заменить null, "" на то значение которое нужно (есть только в аксе - ну в смысле что в VBA excel word .... её нет)
недоплатившие
Select a2.*
from
(
SELECT ТаблицаА.Номер_Договора,ТаблицаА.Сумма_Договора, a1.Поступление, iif(nz(a1.Поступление,0) - nz(ТаблицаА.Сумма_Договора,0)<0;1;0) as Индикатор_Оплаты
FROM ТаблицаА LEFT JOIN (SELECT ТаблицаВ.Номер_Договора, Sum(ТаблицаВ.Платеж) AS Поступление FROM ТаблицаВ GROUP ТаблицаВ.Номер_Договора) AS a1
ON ТаблицаА.Номер_Договора = a1.Номер_Договора
Where iif(nz(a1.Поступление,0) - nz(ТаблицаА.Сумма_Договора,0)<0,1,0)=1
) as a2
Where iif(nz(a2.Поступление,0)=0,1,0)=0
не оплатившие вообще
Select a2.*
from
(
SELECT ТаблицаА.Номер_Договора,ТаблицаА.Сумма_Договора, a1.Поступление, iif(nz(a1.Поступление,0) - nz(ТаблицаА.Сумма_Договора,0)<0;1;0) as Индикатор_Оплаты
FROM ТаблицаА LEFT JOIN (SELECT ТаблицаВ.Номер_Договора, Sum(ТаблицаВ.Платеж) AS Поступление FROM ТаблицаВ GROUP ТаблицаВ.Номер_Договора) AS a1
ON ТаблицаА.Номер_Договора = a1.Номер_Договора
Where iif(nz(a1.Поступление,0) - nz(ТаблицаА.Сумма_Договора,0)<0,1,0)=1
) as a2
Where iif(nz(a2.Поступление,0)=0,1,0)=1