Mysql
 sql >> база данни >  >> RDS >> Mysql

как работят groupby и count в sql

Изборът релационно ви дава набор от резултати. Ако групирате избора си по поле, редовете от набора от резултати ще бъдат групирани по това поле и всеки ред от набора от резултати ще бъде специфичен за групата от резултати.

Например имате таблица с име 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), това е най-добрият тест.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Как мога да слея два низа от числа, разделени със запетая, в MySQL?

  2. SQL:ORDER BY две колони, смесени, не базирани на приоритет

  3. Как да премахнете ненулево ограничение в MySQL

  4. Заредете данни от CSV в битово поле в mysql

  5. изпълнете съхранена процедура в скрипт на google apps