Псевдокод того, что у меня сейчас есть,
Стоимость + CostTax = CostActual
Однако мне нужно, чтобы оно было:
Стоимость + налог - totalSumDiscounts = CostActual
У меня есть оператор SQL Select в 3 таблицах, который вычисляет стоимость + налог = CostActual.
SELECT dbo.XMP_EventUsers.ID, dbo.XMP_EventUsers.EventID, dbo.XMP_EventUsers.UserID,
CONVERT(VARCHAR(20),dbo.XMP_EventUsers.DateCreated, 100)
AS DateCreated, CONVERT(VARCHAR, dbo.XMP_Event.Cost, 1) AS Cost, dbo.Users.FirstName, dbo.Users.LastName,
dbo.XMP_Event.Cost + dbo.XMP_Event.CostTax - dbo.XMP_EventUsers.Paid AS Outstanding,
dbo.XMP_Event.Cost + dbo.XMP_Event.CostTax AS CostActual
FROM dbo.XMP_Event INNER JOIN
dbo.XMP_EventUsers ON dbo.XMP_Event.ID = dbo.XMP_EventUsers.EventID INNER JOIN
dbo.Users ON dbo.XMP_EventUsers.UserID = dbo.Users.UserID
В другой таблице указаны скидки, применяемые к общей стоимости. Этот запрос суммирует применяемые скидки.
SELECT UserID, SUM([Amount]) AS Amount
FROM [dbo].[XMP_EventPromoUsers]
GROUP BY UserID
Как объединить 2-е результаты с первыми, чтобы общее количество скидок было минус от окончательной стоимости в операторе выбора для каждой записи?
Спасибо за вашу помощь!
-R
Пример результатов ниже для ответа 1
Запрос 1 возвращает:
ID|EventID|UserID|DateCreated|Cost|FirstName|LastName|Outstanding|CostActual|FinalValue|
51|14-----|41----|Aug 11 2011|0.00|John-----|Smith---|-120-------|0.00------|-10-------|
Запрос 2
UserID-|Amount----|
41-----|10--------|
96-----|30--------|