Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP][MySQL], Grupowanie według daty dla dwóch wartości
sznoorek
post 17.06.2018, 13:03:08
Post #1





Grupa: Zarejestrowani
Postów: 11
Pomógł: 0
Dołączył: 21.12.2006

Ostrzeżenie: (0%)
-----


Witam,
borykam się z problemem wydobycia danych potrzebnych do wygenerowania wykresu w JS.
Mam takie zapytanie które mnie zadawala w 50%:
  1. $result = mysql_query("select FROM_UNIXTIME(`data`, '%Y-%m-%d') as ndate, data as nunix, count(id) as count_id from logger WHERE generated='tak' group by ndate");
  2. while($row = mysql_fetch_assoc($result)) {
  3. $jaki_dzien[] = strftime("%e %b %Y", $row[nunix]);
  4. $ile_w_dniu[] = $row[count_id];
  5. }

Czyli tworzy mi tablice którą później obrabiam do określonej ilości dni i przekazuje zmienne do JS który wstawia wszystko na wykres.

Chciałbym zrobić drugą wartość dla generated='nie' i dodać wartości do tego samego wykresu jako osobny zbiór.
Niestety to co mi się udaje zrobić zawsze gubi dni. Czyli na wykresie wartości nie pokrywają się z konkretnym dniem, zazwyczaj kilka ostatnich dni jest puste.
A chciałbym gdyby napotkał na brak w danym dniu wypełnił zerem.
Go to the top of the page
+Quote Post
mmmmmmm
post 17.06.2018, 19:00:46
Post #2





Grupa: Zarejestrowani
Postów: 1 421
Pomógł: 310
Dołączył: 18.04.2012

Ostrzeżenie: (0%)
-----


  1. SELECT FROM_UNIXTIME(`data`, '%Y-%m-%d') AS ndate, count(case when generated='tak' then id end) AS count_tak, count(case when generated='nie' then id end) AS count_nie FROM logger GROUP BY ndate
Go to the top of the page
+Quote Post
sznoorek
post 18.06.2018, 09:26:32
Post #3





Grupa: Zarejestrowani
Postów: 11
Pomógł: 0
Dołączył: 21.12.2006

Ostrzeżenie: (0%)
-----


Dzięki, poradziłem sobie z tym w inny sposób.
Dałem dwie pętle smile.gif
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 28.03.2024 - 18:01