Funcția MySQL count() este folosită pentru a returna numărul unei expresii. Ne permite să numărăm toate rândurile sau doar unele rânduri ale tabelului care corespund unei anumite condiții. Este un tip de funcție agregată al cărui tip de returnare este BIGINT. Această funcție returnează 0 dacă nu găsește niciun rând care se potrivește.
Putem folosi funcția de numărare în trei forme, care sunt explicate mai jos:
- Numara (*)
- Număr (expresie)
- numără (distinct)
Să discutăm fiecare în detaliu.
actrita de film kajal
COUNT(*) Funcție: Această funcție folosește instrucțiunea SELECT pentru a returna numărul de rânduri dintr-un set de rezultate. Setul de rezultate conține toate rândurile Non-Null, Null și duplicate.
COUNT(expresie) Funcție: Această funcție returnează setul de rezultate fără a conține rânduri Null ca rezultat al unei expresii.
COUNT(expresie distinctă) Funcție: Această funcție returnează numărul rândurilor distincte fără a conține valori NULL ca rezultat al expresiei.
Sintaxă
Următoarele sunt sintaxa funcției COUNT():
SELECT COUNT (aggregate_expression) FROM table_name [WHERE conditions];
Explicația parametrilor
expresie_agregată: Specifică coloana sau expresia ale cărei valori NON-NULL vor fi numărate.
variabile globale javascript
table_name: Specifică tabelele de unde doriți să preluați înregistrările. Trebuie să existe cel puțin un tabel listat în clauza FROM .
Conditii UNDE: Este optional. Acesta precizează condițiile care trebuie îndeplinite pentru ca înregistrările să fie selectate.
Exemplu de funcție MySQL count().
Luați în considerare un tabel numit „angajați” care conține următoarele date.
Să înțelegem cum funcționează funcțiile count(). MySQL .
Exemplul 1
Executați următoarea interogare care utilizează funcția COUNT(expresie) pentru a calcula numărul total de nume de angajați disponibile în tabel:
mysql> SELECT COUNT(emp_name) FROM employees;
Ieșire:
Exemplul 2
cum să găsiți dimensiunea monitorului
Executați următoarea instrucțiune care returnează toate rândurile din tabelul angajat și clauza WHERE specifică rândurile a căror valoare în coloana emp_age este mai mare de 32:
mysql> SELECT COUNT(*) FROM employees WHERE emp_age>32;
Ieșire:
Exemplul3
Această declarație folosește funcția COUNT(expresie distinctă) care numără rândurile Non-Null și distincte din coloana emp_age:
mysql> SELECT COUNT(DISTINCT emp_age) FROM employees;
Ieșire:
Funcția MySQL Count() cu clauza GROUP BY
De asemenea, putem folosi funcția count() cu clauza GROUP BY care returnează numărul elementului din fiecare grup. De exemplu, următoarea instrucțiune returnează numărul de angajați din fiecare oraș:
mysql> SELECT emp_name, city, COUNT(*) FROM employees GROUP BY city;
După execuția cu succes, vom obține rezultatul de mai jos:
Funcția MySQL Count() cu clauza HAVING și ORDER BY
Să vedem o altă clauză care folosește clauza ORDER BY și Having cu funcția count(). Executați următoarea instrucțiune care dă numele angajatului care are cel puțin două vârstă la fel și le sortează în funcție de rezultatul numărării:
șir în int
mysql> SELECT emp_name, emp_age, COUNT(*) FROM employees GROUP BY emp_age HAVING COUNT(*)>=2 ORDER BY COUNT(*);
Această declarație va da rezultatul după cum urmează: