sql >> Databasteknik >  >> RDS >> Mysql

hur fungerar groupby and count i sql

Ett urval relationellt ger dig en resultatuppsättning. Om du grupperar ditt val efter ett fält, kommer raderna i resultatuppsättningen att grupperas efter det fältet och varje rad i resultatuppsättningen kommer att vara specifik för gruppen av resultat.

Du har till exempel en tabell med namnet Djur med följande fält:

Type | Gender | Name

Om du kör den här frågan (i MySQL, till exempel):

 select Type, Gender, Name from Animals where Type <> 'Pig'

du får alla djur som inte är "grisar". Om en rad har Typ ='pig' kommer den att inkluderas i resultaten.

Denna fråga:

select Type, Gender, count(*) from Animals group by Type, Gender

kommer att ha så här många rader:antal typer * antal kön

Du kan skapa villkor för din grupp genom att använda ha-satsen i MySQL.

Läs mer här

Skillnaden mellan count(*) och count(browser) är att den första returnerar antalet av alla poster, den andra returnerar antalet alla poster där not (browser is null) .

Testa att infoga en rad där browser is null och kör sedan 1) och 2), detta är det bästa testet.



  1. PDO:kontrollera om det finns uppdaterad eller infogat post med mysql INFOGA PÅ DUBLIKATNYCKELUPPDATERING

  2. mysqli_num_rows fungerar inte korrekt

  3. Hur man använder MySQL med Deno och Ek

  4. MySQL DROP UTLANDSNYCKEL Begränsning