Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Jak wyciągnąć z bazy dane dla poszczególnych miesięcy?
Forum PHP.pl > Forum > PHP
tikky
Witam,

Mam w bazie zamówienia - jenda kolumna to data z godziną a druga ilość produktów sprzdanych w danej transakcji.

Chciałbym teraz zrobić zesatwienie sprzedaży za ostatnie 6 miesięcy.
W jaki sposób użyć zapytania mysql lub funkcji operujących datami aby wyciągąc dane z poszczególnych miesięcy i uzyskać tabelę typu:

  1. ----------------------
  2. 2014 luty | 20
  3. 2014 styczeń | 50
  4. 2013 grudzień | 72
  5. 2013 listopad | 68
  6. 2013 październik | 17
  7. 2013 wrzesień | 28


Oczywiście wiem, że mogę ustawić zakresy dat ręcznie, ale chciałbym to rozwiązać bardziej elegancko.
Kshyhoo
Nie znamy struktury bazy, ale chcąc zsumować sprzedane produkty w danych miesiącach, musisz zrobić coś na podobę:
  1. SELECT SUM(szt) AS suma, COUNT(szt) AS sztuk,
  2. YEAR(DATA) AS rok, MONTH(DATA) AS miesiac
  3. FROM towar GROUP BY rok, miesiac;

zakładając, że tabele wyglądają tak:
  1. +----+-----+------------+
  2. | id | szt | DATA |
  3. +----+-----+------------+
  4. | 1 | 15 | 2014-01-12 |
  5. | 2 | 11 | 2014-01-27 |
  6. | 3 | 23 | 2014-02-18 |
  7. | 4 | 34 | 2014-02-22 |
  8. | 5 | 10 | 2013-01-13 |
  9. | 6 | 10 | 2013-01-09 |
  10. +----+-----+------------+

powinno Ci dać coś takiego:
  1. +------+-------+------+---------+
  2. | suma | sztuk | rok | miesiac |
  3. +------+-------+------+---------+
  4. | 20 | 2 | 2013 | 1 |
  5. | 26 | 2 | 2014 | 1 |
  6. | 57 | 2 | 2014 | 2 |
  7. +------+-------+------+---------+
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.