Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MSSQL]Grupowanie po miesiącu
Forum PHP.pl > Forum > Przedszkole
jajcarzd1
Witam

Mam takie pytanie otóż mam pewne zapytanie którym chcę wyciągnąć obroty firmy w danych roku pogrupowane według miesięcy. Sęk w tym że zapytanie wyciągnie oczywiście wartości tylko dla tych miesięcy w których miały miejsce jakieś transakcje, ja natomiast chciałbym aby zawsze wyciągane było 12 rekordów czyli 12 miesięcy i dla tych w kórych nie było nic sprzedane była poprsotu wartośc zero. Przykładowe zapytanie (okrojone) poniżej.

  1.  
  2. SELECT
  3. YEAR(convert(char(10), dateadd(day,TrN_Data2,'18001228'), 126)) AS ROK,
  4. MONTH(convert(char(10), dateadd(day,TrN_Data2,'18001228'), 126)) AS MIESIAC,
  5. SUM((TrP_Kwota * (TrP_Typ-2))+(TrP_Kwota * (TrP_Typ-1))) AS KWOTA
  6. FROM
  7. CDN.TraPlat
  8. WHERE
  9. ......
  10. GROUP BY YEAR(convert(char(10), dateadd(day,TrN_Data2,'18001228'), 126)), MONTH(convert(char(10), dateadd(day,TrN_Data2,'18001228'), 126))
  11. ORDER BY ROK,MIESIAC
  12.  


Dzięki pozdrawiam
Demongod
Możesz spróbować stworzyć tabele z miesiącami i według niej grupować sume
  1. SELECT
  2. year AS rok, id_miesiaca AS miesiac, sum() AS suma
  3. FROM
  4. CDN.TraPlat, CDN.miesiace
  5. WHERE
  6. CDN.TraPla.id_miesiaca=CDN.miesiace.id_miesiaca
  7. GROUP BY
  8. YEAR, id_miesiaca
  9. ORDER BY
  10. ROK,MIESIAC
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.