У меня есть база данных с двумя таблицами: - Кредит, который записывает все платежи, которые я должен получить - Оплату, которая регистрирует платежи, которые я получилSQL - Фильтр результата запроса с дополнительным условием
В Структура Кредит: id, всего Оплата: ID, полученный
Моя цель - получить запрос, который распечатает все платежи, которые еще не полностью оплачены. На данный момент я написал запрос, который успешно печатает - идентификатор кредита - общая сумма денег - сумма полученных денег Мне просто нужно добавить условие: не печатайте записи, в которых платеж полностью выполнен. Это мой SQL-код:
SELECT Credit.id,
Credit.total,
(SELECT SUM(Payment.received)
FROM Payment WHERE Payment.id = Credit.id) AS TotalReceived
FROM Credit
WHERE Credit.total > 0;
Я попытался изменить последнюю строку с «WHERE Credit.total> TotalReceived», но он не работает.
Можете ли вы мне помочь? :)
PS. В кредите идентификатор уникален, тогда как в таблице «Оплата» может присутствовать множество строк с одинаковым идентификатором.
использовать соединения и стараться избегать связанных друг с другом внутренних запросов. – manoj