Изборът релационно ви дава набор от резултати. Ако групирате избора си по поле, редовете от набора от резултати ще бъдат групирани по това поле и всеки ред от набора от резултати ще бъде специфичен за групата от резултати.
Например имате таблица с име Animals със следните полета:
Type | Gender | Name
Ако изпълнявате тази заявка (например в MySQL):
select Type, Gender, Name from Animals where Type <> 'Pig'
ще получите всички животни, които не са "Прасе". Ако ред има Type ='pig', той ще бъде включен в резултатите.
Тази заявка:
select Type, Gender, count(*) from Animals group by Type, Gender
ще има толкова много редове:брой типове * брой полове
Можете да създадете условия за вашата група, като използвате клаузата had в MySQL.
Прочетете повече тук
Разликата между count(*)
и count(browser)
е, че първият ще върне броя на всички записи, вторият ще върне броя на всички записи, където not (browser is null)
.
Опитайте да вмъкнете ред, където browser is null
и след това стартирайте 1) и 2), това е най-добрият тест.