Понедельник, 30 Июля 2018 г. 11:33
+ в цитатник
Никак не пойму как сделать запрос. Есть таблица "Оказанные услуги", есть "Оплата" этих услуг. Может быть несколько записей Оплаты на одну Оказанную услугу, может не быть вообще. В Оказанных услугах есть Код клиента. Нужно сделать выборку "Код клиента" и его долг (СтоимостьУслуги - сумма его платежей).
SELECT [Оказанные услуги].КодКлиента, Sum(Оплата.СуммаОплаты) AS paid
FROM [Оказанные услуги] LEFT JOIN Оплата ON [Оказанные услуги].Код = Оплата.КодУслуги
GROUP BY [Оказанные услуги].КодКлиента;
куда здесь вставить Стоимость услуги, внутрь суммы не получится,будет считать неправильно, снаружи Стоимость услуги-Sum, то выражение не будет частью статистической функции или группы
Попробовал сделать так
SELECT [Оказанные услуги].КодКлиента, ([Оказанные услуги].СуммаОплаты-Nz((SELECT Sum(Оплата.СуммаОплаты) AS [Sum-СуммаОплаты] FROM [Оплата] where Оплата.КодУслуги=[Оказанные услуги].Код),0)) AS debt
FROM [Оказанные услуги], Оплата
GROUP BY [Оказанные услуги].КодКлиента, [Оказанные услуги].Код, [Оказанные услуги].СуммаОплаты;
считает правильно, но не могу сгруппировать по Коду клиента, если убрать из группировки Код и Сумму Оплаты, тогда вложенный селект будет ругаться
http://www.sql.ru/forum/1299952/sql-zapros
-
Запись понравилась
-
0
Процитировали
-
0
Сохранили
-