Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [mysql] grupowanie wg daty
grzegorz_g
post
Post #1





Grupa: Zarejestrowani
Postów: 259
Pomógł: 0
Dołączył: 26.10.2004

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


Szukam rozwiązania takie problemu.
Potrzebuje w najbardziej optymalny sposób pobrać ilośc stron zarejestrowanych w mojej bazie wg tygodni, miesięcy. Kłopot w tym że datę mam zapisaną w timestamp.

  1. <?php
  2. $q="select count() as ile from sites group by kiedy (przedziały 7 dniowe)";
  3. ?>


--------------------
www.wettradar.com
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 5)
TomASS
post
Post #2





Grupa: Zarejestrowani
Postów: 1 660
Pomógł: 13
Dołączył: 9.06.2004
Skąd: Wrocław i okolice

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


  1. SELECT COUNT() AS Ile, WEEK(FROM_UNIXTIME(pole_timestamp)) AS Tydz FROM sites GROUP BY WEEK(FROM_UNIXTIME(pole_timestamp))


Nie zapomnij, że tygodnie można różnie liczyć (np. czy rok zaczyna się od środy czy od czwartku - ma to znaczenie), oraz że sam numer tygodnia nie określa Ci jednoznacznie czasu, musisz dołożyć do tego także rok.

Zamiast WEEK, możesz dać coś z tej, albo napisać swoją funkcję/procedurę.

Ten post edytował TomASS 7.04.2009, 08:13:50


--------------------
Go to the top of the page
+Quote Post
grzegorz_g
post
Post #3





Grupa: Zarejestrowani
Postów: 259
Pomógł: 0
Dołączył: 26.10.2004

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


kurcze jednak nie tak ja datę mam zapisaną jako pole bigint(20) , gdzie zapisauje czas unix. W takiej sytuacji wyciągniecie liczy stron rejestrowanych w danych tygodniach jest chyba niemożliwe , prawda ?


--------------------
www.wettradar.com
Go to the top of the page
+Quote Post
erix
post
Post #4





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




Przecież napisał... FROM_UNIXTIME(pole_timestamp).


--------------------

ZCE :: Pisząc PW załączaj LINK DO TEMATU i TYLKO w sprawach moderacji :: jakiś błąd - a TREŚĆ BŁĘDU? :: nie ponaglaj z odpowiedzią via PW!
Go to the top of the page
+Quote Post
grzegorz_g
post
Post #5





Grupa: Zarejestrowani
Postów: 259
Pomógł: 0
Dołączył: 26.10.2004

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


działa nie dokońca tak jak chciałem

zlicza ładnie tylko ze ja chce zrobić ile stron danego tyg. sie rejestrowało. Tylko jak ,minie rok to nastepne tygodnie bedzie mi doloczalo do juz istniejących a nie o to mi chodzi. Da się to jakoś ominąc?

Ten post edytował grzegorz_g 7.04.2009, 23:14:39


--------------------
www.wettradar.com
Go to the top of the page
+Quote Post
TomASS
post
Post #6





Grupa: Zarejestrowani
Postów: 1 660
Pomógł: 13
Dołączył: 9.06.2004
Skąd: Wrocław i okolice

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


Chłopie weź się w garść! Wiem, że jest późno....

Zobacz co Ci zwróci:
  1. SELECT COUNT() AS Ile, WEEK(FROM_UNIXTIME(pole_timestamp)), YEAR(FROM_UNIXTIME(pole_timestamp)) AS Tydz FROM sites GROUP BY WEEK(FROM_UNIXTIME(pole_timestamp))


jeszcze mała podpowiedź... CONCAT

Ten post edytował TomASS 7.04.2009, 23:17:37


--------------------
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 Aktualny czas: 22.08.2025 - 09:28