logo

MySQL Count() funkcija

MySQL funkcija count() tiek izmantota, lai atgrieztu izteiksmes skaitu. Tas ļauj mums saskaitīt visas rindas vai tikai dažas tabulas rindas, kas atbilst noteiktam nosacījumam. Tas ir apkopojošas funkcijas veids, kura atgriešanas veids ir BIGINT. Šī funkcija atgriež 0, ja tā neatrod nevienu atbilstošu rindu.

Skaitīšanas funkciju varam izmantot trīs veidos, kas ir izskaidroti tālāk:

  • Skaits (*)
  • Skaits (izteiksme)
  • Skaits (atšķirīgs)

Apspriedīsim katru sīkāk.

COUNT(*) Funkcija: Šī funkcija izmanto priekšrakstu SELECT, lai atgrieztu rezultātu kopas rindu skaitu. Rezultātu kopā ir visas rindas bez nulles, nulles un dublikātu rindas.

COUNT(izteiksme) Funkcija: Šī funkcija atgriež rezultātu kopu, nesaturot Null rindas kā izteiksmes rezultātu.

java virkne isempty

COUNT (atšķirīga izteiksme) Funkcija: Šī funkcija atgriež atšķirīgo rindu skaitu, nesaturot NULL vērtības kā izteiksmes rezultātu.

Sintakse

Tālāk ir norādīta funkcijas COUNT() sintakse:

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

Parametru skaidrojums

aggregate_expression: Tas norāda kolonnu vai izteiksmi, kuras NON-NULL vērtības tiks skaitītas.

tabulas_nosaukums: Tas norāda tabulas, no kurām vēlaties izgūt ierakstus. Klauzulā FROM ir jābūt vismaz vienai tabulai.

KUR nosacījumi: Tas nav obligāti. Tajā ir norādīti nosacījumi, kas jāizpilda, lai ierakstus varētu atlasīt.

MySQL count() funkcijas piemērs

Apsveriet tabulu ar nosaukumu “darbinieki”, kurā ir šādi dati.

mysql skaits ()

Ļaujiet mums saprast, kā darbojas count () funkcijas MySQL .

1. piemērs

Izpildiet šo vaicājumu, kas izmanto funkciju SKAITS (izteiksme), lai aprēķinātu kopējo tabulā pieejamo darbinieku vārdu skaitu:

lateksa fontu izmēri
 mysql> SELECT COUNT(emp_name) FROM employees; 

Izvade:

mysql skaits ()

Piemērs2

Izpildiet šo paziņojumu, kas atgriež visas rindas no darbinieku tabulas, un WHERE klauzula norāda rindas, kuru vērtība kolonnā emp_age ir lielāka par 32:

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

Izvade:

mysql skaits ()

3. piemērs

Šajā paziņojumā tiek izmantota funkcija COUNT (atšķirīga izteiksme), kas saskaita Non-Null un atšķirīgas rindas kolonnā emp_age:

 mysql> SELECT COUNT(DISTINCT emp_age) FROM employees; 

Izvade:

mysql skaits ()

MySQL Count() funkcija ar GROUP BY klauzulu

Mēs varam arī izmantot funkciju count() ar klauzulu GROUP BY, kas atgriež elementa skaitu katrā grupā. Piemēram, šāds paziņojums atgriež darbinieku skaitu katrā pilsētā:

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

Pēc veiksmīgas izpildes mēs iegūsim šādu rezultātu:

mysql skaits ()

MySQL Count() funkcija ar HAVING un ORDER BY klauzulu

Apskatīsim vēl vienu klauzulu, kas izmanto ORDER BY un Have klauzu ar funkciju count(). Izpildiet šādu paziņojumu, kurā norādīts darbinieka vārds, kuram ir vismaz divi vienādi vecumi, un sakārto tos, pamatojoties uz uzskaites rezultātu:

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

Šis paziņojums sniegs šādu rezultātu:

mysql skaits ()