Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Statystyki, problem z zapytaniem zliczajacym.
Forum PHP.pl > Forum > Bazy danych > MySQL
thornag
Witam.

Jak to zwykle bywa z tabeli z danymi o odwiedzinach jest kolumna przegladarka.

Chcialbym pobrac dane na zasadzie SELECT COUNT(browsers) ale tak aby tablica wynikowa wygladala mniej wiecej tak.

Opera => 45
IE => 44
FF => 43

Mam maly problem z zapytaniem. Teoretycznie powinno wyglada ctak.

Pobierz ilosc powarzajacych sie rekordow, zlicz ile powtorzen, posegreguj po ilosci malejaco, jednak mam problem z przelozeniem tego na SQL.

Moge liczyc na mala pomoc ?
MatheW
  1. SELECT count(SELECT browsers FROM tabela WHERE browsers="opera") FROM tabela
tylko mysql bedzie musial byc zdaje sie 4.1 minimum
thornag
To jest mniej wiecej to o co mi chodzi. Tylko ja nie chce warunku browser = opera ustawiac na sztywno.

Chce zeby robil to mniej wiecej tak:

Bierze pierwszy rekord jest opera to ustawia opera = 1
Nastepny tez opera wiec mamy opera = 2
Nastepny jest IE wiec mamy IE = 1

Itp itp.

Wlasciwie to wpadlem na inny pomysl. Dla zainteresowanych.

  1. <?php
  2. $browsers = array();
  3. $query = "SELECT browser FROM stats";
  4.  
  5. while ($row = mysql_fetch_array) {
  6.  if(!array_key_exists($row['browser'], $browsers)
  7. $browsers[$row['browser']] = 1;
  8.  else
  9. $browsers[$row['browser']] ++;
  10. }
  11. ?>


Pozostal juz tylko problem posortowania tablicy wedlug wartosci a nie klucza. Jakies pomysly ?
DawidF
Ja bym wszystko załatwił za pomocą SQL:

  1. SELECT browser, COUNT(browser) AS ile_klikniec FROM tabela GROUP BY browser ORDER BY ile_klikniec DESC


Mam nadzieję, że pomogłem.

Pozdrawiam,
DawidF
TomASS
Cytat
Pozostal juz tylko problem posortowania tablicy wedlug wartosci a nie klucza. Jakies pomysly ?

asort()
thornag
Powiem szczerze wczensiej bylem zbyt leniwy zeby ksiazke z polki sciagnac, no teraz wstyd smile.gif Jakkolwiek dzieki Tomass za pomoc.
mariuszn3
Optymalnie wszystko powinieneś załatwić za pomocą MySQL, bardzo dobrze Ci podpowiedział DavidF. Zamiast 10 linijek php masz jedną SQL i będzie to na pewno dużo szybsze.
thornag
Zalatwilem zapytaniem, wszystko smiga.
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.