У меня есть три таблицы, похожие на следующие:
Счета-фактуры: Number | Date | Customer
tblInvDetails: Invoice | Quantity | Rate | Description
tblPayments: Invoice | Date | Amount
Я создал запрос с именем exInvDetails
, который добавляет столбец Amount
к tblInvDetails
:
SELECT tblInvDetails.*, [tblInvDetails.Quantity]*[tblInvDetails.Rate]* AS Amount
FROM tblInvDetails;
Затем я создал запрос exInvoices
для добавления столбцов Total
и Balance
к tblInvoices
:
SELECT tblInvoices.*,
(SELECT Sum(exInvDetails.Amount) FROM exInvDetails WHERE exInvDetails.Invoice = tblInvoices.Number) AS Total,
(SELECT Sum(tblPayments.Amount) FROM tblPayments WHERE tblPayments.Invoice = tblInvoices.Number) AS Payments,
(Total-Payments) AS Balance
FROM tblInvoices;
Если в tblPayments
нет соответствующих платежей, вместо 0
поля будут пустыми. Есть ли способ заставить полученный запрос поместить 0
в этот столбец?