Wybór relacyjnie daje zestaw wyników. Jeśli grupujesz swój wybór według pola, wiersze zestawu wyników zostaną pogrupowane według tego pola, a każdy wiersz zestawu wyników będzie specyficzny dla grupy wyników.
Na przykład masz tabelę o nazwie Zwierzęta z następującymi polami:
Type | Gender | Name
Jeśli uruchamiasz to zapytanie (na przykład w MySQL):
select Type, Gender, Name from Animals where Type <> 'Pig'
otrzymasz wszystkie zwierzęta, które nie są „świniami”. Jeśli wiersz ma Typ =„świnia”, zostanie uwzględniony w wynikach.
To zapytanie:
select Type, Gender, count(*) from Animals group by Type, Gender
będzie miał tyle wierszy:liczba typów * liczba płci
Możesz stworzyć warunki dla swojej grupy, używając klauzuli have w MySQL.
Przeczytaj więcej tutaj
Różnica między count(*)
i count(browser)
jest to, że pierwszy zwróci liczbę wszystkich rekordów, drugi zwróci liczbę wszystkich rekordów, gdzie not (browser is null)
.
Spróbuj wstawić wiersz, w którym browser is null
a następnie uruchom 1) i 2), to jest najlepszy test.