Kiedy chcemy stworzyć np. wykres przedstawiający rejestracje użytkowników musimy stworzyć z reguły plik dla silnika wykresów zwykle jest to format csv i wygląda on tak:
2011-04-20;24
2011-04-19;97
2011-04-18;67
2011-04-17;59
...
Gdzie pierwsza kolumna to dzień a druga to ilość osób zarejestrowanych w tym dniu, i teraz pojawia się problem jak pobrać to za jednym zapytaniem sql
Rozwiązanie:
Oto nasza tabela w bazie danych o nazwie "users"
+---------------------+-----------+
| date | id |
+---------------------+-----------+
| 2009-05-27 00:58:56 | 1 |
| 2009-05-27 01:27:30 | 2 |
| 2009-05-28 02:35:37 | 3 |
| 2009-05-28 02:58:56 | 4 |
| 2009-05-29 03:36:03 | 5 |
| 2009-05-29 03:38:03 | 6 |
| 2009-05-29 03:48:16 | 7 |
| 2009-05-29 03:51:37 | 8 |
Chcemy aby zapytanie zwróciło nam taki wynik
+---------------------+----------------------+
| date | ile |
+---------------------+----------------------+
| 2009-05-27 | 1 |
| 2009-05-28 | 2 |
| 2009-05-29 | 4 |
Zapytanie SQL
SELECT DATE(date), count(id) AS ile FROM users GROUP BY DATE(date);
Listing
Ranga: Administrator serwisu Punktów: 0