Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [SQL] Wyświetlenie powtarzających się wartości wraz z policzeniem ich
Forum PHP.pl > Forum > Przedszkole
sadistic_son
cześć,
Mam taką tabelę:

id | browser
1 | AA
2 | BB
3 | AA
4 | CC
5 | DD
6 | ZZ
7 | ZZ
8 | ZZ

Chciałbym uzyskać taki efekt (kolejność nieważna - może zaczynać się od ZZ lub BB, itd):

AA, 2
BB, 1
CC, 1
DD, 1
ZZ, 3

Innymi słowy wartości z `broweser` powtarzają się a jest ich jakieś 5-6 unikalnych w sumie. Chciałbym je wyświetlić po jednym razie razem z policzeniem ich wystąpień.

Nie wychodzi mi ułożenie odpowiedniego zapytania. Próbowałem tak:
  1. SELECT COUNT(DISTINCT(`browser`)) FROM `table`


oraz tak:

  1. SELECT DISTINCT(`browser`), COUNT(`browser`) AS `COUNTED_BROWSER` FROM `table` WHERE `id`>0;


Ani jedno ani drugie nie zwraca tego czego oczekuję. W sumie nic dziwnego, bo drugie zwraca mi całkowitą liczbę rekordów z `browser`.
Działa należycie samo SELECT DISTINCT(`browser`) FROM `table` bo wiświetla każdy browser tylko raz, ale nie liczy mi ich wystąpień oczywiście.

Pomóźcie. Dzięki.
nospor
zapomniales o GROUP BY
sadistic_son
A rzeczywiśćie, GROUP BY rozwiązuje sprawę. Tak, zapomniałem o tym. Tak się zdarza, jak używa się SQLa raz na rok czy trzy lata wink.gif

Dzięki!

  1. SELECT `browser`, COUNT(`browser`) FROM `table` GROUP BY `browser`;
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.