Bruge værdier i select til beregninger
Hej folkensJeg har et lille problem, som jeg ikke kan gennemskue
Jeg har en select hvor der summeres en værdig, afhængig af rækkens ide. I alt er der 4 summeringer (se eksempel nedenfor). Jeg skulle gerne have en femte værdi, der trækker de fire tidligere fra en total opsummering, så det der har andre ID-er sammen.
Eksempel (her kun 2 id'er)
SELECT produktId,
CAST(isnull((Select SUM(ptemp_sum.quantity) from #Product_temp ptemp_sum with (nolock) where Id = 1 and ptemp.item = ptemp_sum.item), 0) as char(25)) as [Interval 1],
CAST(isnull((Select SUM(ptemp_sum.quantity) from #Product_temp ptemp_sum with (nolock) where Id = 2 and ptemp.item = ptemp_sum.item), 0) as char(25)) as [Interval 2]
from #Product ptemp with (nolock)
group by productId, item
Nu vil jeg gerne have en sidste med, som jeg forestiller mig ser noget lignede således ud
Select (SUM(ptemp_sum.quantity) - [Interval 1] - [Interval 2]) from #Product_temp ptemp_sum with (nolock) where ptemp.item = ptemp_sum.item
Den klager dog over ikke at kende Interval 1 og Interval 2.
Hvorledes kan man lave en sådan beregning? skal man beregne summen en gang til? Det virker som over-kill at beregne summen igen.
Mvh
Kristoffer