Dzień dobry.
Przychodzę z pytaniem odnośnie dwóch zapytań.
Robię takie zadanko: Oblicz czy wartość zamówienia jest poniżej czy powyżej, średniej wartość zamówień.
Baza: AdventureWork
Ogólnie to zadanie jest rozwiązanie na stronie z której korzystam
Kod ze strony:
select salesorderid,
subtotal,
case
when subtotal <
(
select
avg(subtotal) as srednia
from
sales.SalesOrderHeader
) then 0
else 1
end as [0-1]
from sales.SalesOrderHeader
Mój:
select SalesOrderID,
SubTotal,
iif( subtotal < avg(subtotal), 1 , 0) as [0-1]
from sales.SalesOrderHeader
group by SalesOrderID,
SubTotal
Rozumiem to w ten sposób ,że on wylicza w tym zagnieżdżonym select średnią zamówień a później ją przyrównuje. Dlaczego u mnie to nie działa jeżeli iif'em chce porównać dwie wartości?