Я пытаюсь суммировать две функции CASE (2 столбца PotentialOrderGain и PotentialFreightLoss из операторов case), которые я только что создал в своем запросе. Мне нужно создать новый столбец как NetGainLoss путем суммирования этих двух функций case вместе. Я знаю, что могу использовать метод cte, чтобы сделать это. Но в то же время мне нужно объединить три таблицы вместе. 3 таблицы: Person.Address и Sales.SalesOrderHeader и Sales.vIndividualCustomer . Я не знаю, как достичь их всех в большом запросе. Ниже, пожалуйста, найдите мой запрос. Большое спасибо заранее!
select h.SalesOrderID,
i.StateProvinceName as ShipToState,
h.OrderDate,
h.SubTotal,
h.Freight,
case when h.SubTotal>=1500 and h.SubTotal<2000 then 2000-h.SubTotal
when h.SubTotal<1500 then 0
when h.SubTotal>=2000 then 0
end as PotentialOrderGain,
case when h.SubTotal>=1500 and h.SubTotal<2000 then 0.22-h.Freight
when h.SubTotal<1500 then 0
when h.SubTotal>=2000 then 0.22-h.Freight
end as PotentialFreightLoss
from Sales.vIndividualCustomer i
inner join Person.Address a
on a.City = i.City
inner join Sales.SalesOrderHeader h
on a.AddressID = h.ShipToAddressID
where i.StateProvinceName='California'
order by h.SalesOrderID;