Czesc mój problem :
W bazie zrobić zestawienie zawierające następujące dane: nazwa miesiąca, rok oraz sumę opłat za wizyty w danych miesiącu danego roku. W zestawieniu uwzględniamy tylko te miesiące dla których sumaryczna wartość opłat jest wieksza od średniej miesięcznej wartości opłat dla danego roku wynik malejąco według wartości opłat
oto tabela:
Tabela Wizyty ( IdWizyty, IdLekarza, IdPacjenta, DataWizyty, Oplata)
Skorzystalem tutaj z funkcji DateName( mm, data)). .Oto mój kod , jak ruszyć dalej a dokladniej jak wyciagnac ten miesiac ktory spelnia ten warunek ?
with tmp as
(
select
DateName( mm, DataWizyty) as miesiac ,
DateName( yy, DataWizyty) as rok ,
sum(oplata) as Suma
from Wizyty
group by DateName( mm, DataWizyty),
DateName( yy, DataWizyty)
)
select * ,
sum(suma) over (partition by miesiac) as SumaWartosciOplatNaMiesiac,
avg(suma) over (partition by rok) as SredniaMiesiecznaWartoscOplatDlaDanegoRoku
from tmp