logo

MySQL Count()-functie

De functie MySQL count() wordt gebruikt om het aantal van een expressie te retourneren. Hiermee kunnen we alle rijen tellen of slechts enkele rijen van de tabel die aan een bepaalde voorwaarde voldoen. Het is een type aggregatiefunctie waarvan het retourtype BIGINT is. Deze functie retourneert 0 als er geen overeenkomende rijen worden gevonden.

We kunnen de telfunctie in drie vormen gebruiken, die hieronder worden uitgelegd:

  • Graaf (*)
  • Aantal (expressie)
  • Tellen (verschillend)

Laten we ze allemaal in detail bespreken.

COUNT(*) Functie: Deze functie gebruikt de SELECT-instructie om het aantal rijen in een resultatenset te retourneren. De resultatenset bevat alle niet-null-, null- en dubbele rijen.

COUNT(expressie) Functie: Deze functie retourneert de resultaatset zonder Null-rijen als resultaat van een expressie te bevatten.

AANTAL(verschillende uitdrukking) Functie: Deze functie retourneert het aantal afzonderlijke rijen zonder NULL-waarden als resultaat van de expressie.

Syntaxis

Hieronder volgt de syntaxis van de functie COUNT():

 SELECT COUNT (aggregate_expression) FROM table_name [WHERE conditions]; 

Uitleg van parameters

geaggregeerde_expressie: Het specificeert de kolom of expressie waarvan de NON-NULL-waarden worden geteld.

tafel naam: Het specificeert de tabellen waaruit u records wilt ophalen. Er moet ten minste één tabel worden vermeld in de FROM-clausule.

WHERE voorwaarden: Het is optioneel. Het specificeert de voorwaarden waaraan moet worden voldaan voordat de records kunnen worden geselecteerd.

Voorbeeld van MySQL count()-functie

Beschouw een tabel met de naam 'werknemers' die de volgende gegevens bevat.

mysql-aantal()

Laten we begrijpen hoe count()-functies werken MySQL .

java hoofd

Voorbeeld 1

Voer de volgende query uit, waarbij de functie AANTAL(expressie) wordt gebruikt om het totale aantal werknemersnamen te berekenen dat beschikbaar is in de tabel:

Apple-emoji's op Android
 mysql> SELECT COUNT(emp_name) FROM employees; 

Uitgang:

mysql-aantal()

Voorbeeld2

Voer de volgende instructie uit die alle rijen uit de werknemerstabel retourneert en de WHERE-clausule specificeert de rijen waarvan de waarde in de kolom emp_age groter is dan 32:

 mysql> SELECT COUNT(*) FROM employees WHERE emp_age>32; 

Uitgang:

mysql-aantal()

Voorbeeld3

Deze instructie gebruikt de functie COUNT(distinct expression) die de niet-null- en afzonderlijke rijen in de kolom emp_age telt:

 mysql> SELECT COUNT(DISTINCT emp_age) FROM employees; 

Uitgang:

mysql-aantal()

MySQL Count()-functie met GROUP BY-clausule

We kunnen ook de functie count() gebruiken met de GROUP BY-clausule die het aantal elementen in elke groep retourneert. De volgende verklaring retourneert bijvoorbeeld het aantal werknemers in elke stad:

 mysql> SELECT emp_name, city, COUNT(*) FROM employees GROUP BY city; 

Na de succesvolle uitvoering krijgen we het resultaat zoals hieronder:

mysql-aantal()

MySQL Count()-functie met HAVING- en ORDER BY-clausule

Laten we een andere clausule bekijken die de clausule ORDER BY en Taking gebruikt met de functie count(). Voer de volgende instructie uit die de naam van de werknemer geeft die minstens twee dezelfde leeftijd heeft en sorteert deze op basis van het telresultaat:

 mysql> SELECT emp_name, emp_age, COUNT(*) FROM employees GROUP BY emp_age HAVING COUNT(*)>=2 ORDER BY COUNT(*); 

Deze verklaring geeft de uitvoer zoals hieronder:

mysql-aantal()