logo

Funkce MySQL Count().

Funkce count() MySQL se používá k vrácení počtu výrazů. Umožňuje nám spočítat všechny řádky nebo jen některé řádky tabulky, které odpovídají zadané podmínce. Je to typ agregační funkce, jejíž návratový typ je BIGINT. Tato funkce vrátí 0, pokud nenajde žádné odpovídající řádky.

Funkci počítání můžeme použít ve třech formách, které jsou vysvětleny níže:

  • Počet (*)
  • počítat (výraz)
  • Počet (výrazný)

Pojďme diskutovat o každém podrobně.

COUNT(*) Funkce: Tato funkce používá příkaz SELECT k vrácení počtu řádků v sadě výsledků. Sada výsledků obsahuje všechny řádky Non-Null, Null a duplikáty.

COUNT(výraz) Funkce: Tato funkce vrátí sadu výsledků, aniž by jako výsledek výrazu obsahovala řádky Null.

vyhledávání bfs

COUNT(odlišný výraz) Funkce: Tato funkce vrací počet odlišných řádků, aniž by jako výsledek výrazu obsahovala hodnoty NULL.

Syntax

Následuje syntaxe funkce COUNT():

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

Vysvětlení parametrů

agregovaný_výraz: Určuje sloupec nebo výraz, jehož hodnoty NON-NULL se budou počítat.

název_tabulky: Určuje tabulky, ze kterých chcete načíst záznamy. V klauzuli FROM musí být uvedena alespoň jedna tabulka.

KDE podmínky: Je to nepovinné. Specifikuje podmínky, které musí být splněny pro výběr záznamů.

Příklad funkce MySQL count().

Zvažte tabulku s názvem 'zaměstnanci', která obsahuje následující data.

mysql count()

Pojďme pochopit, jak fungují funkce count(). MySQL .

Příklad1

Proveďte následující dotaz, který používá funkci COUNT(výraz) k výpočtu celkového počtu jmen zaměstnanců dostupných v tabulce:

char a int java
 mysql> SELECT COUNT(emp_name) FROM employees; 

Výstup:

mysql count()

Příklad2

Proveďte následující příkaz, který vrátí všechny řádky z tabulky zaměstnanců a klauzule WHERE určuje řádky, jejichž hodnota ve sloupci emp_age je větší než 32:

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

Výstup:

mysql count()

Příklad3

Tento příkaz používá funkci COUNT(distinct expression), která počítá nenulové a odlišné řádky ve sloupci emp_age:

 mysql> SELECT COUNT(DISTINCT emp_age) FROM employees; 

Výstup:

mysql count()

Funkce MySQL Count() s klauzulí GROUP BY

Můžeme také použít funkci count() s klauzulí GROUP BY, která vrací počet prvku v každé skupině. Například následující příkaz vrátí počet zaměstnanců v každém městě:

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

Po úspěšném provedení získáme výsledek, jak je uvedeno níže:

mysql count()

Funkce MySQL Count() s klauzulí HAVING a ORDER BY

Podívejme se na další klauzuli, která používá klauzuli ORDER BY a Having s funkcí count(). Proveďte následující příkaz, který uvede jméno zaměstnance, který má alespoň dva stejné věky, a seřadí je na základě výsledku počítání:

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

Toto prohlášení poskytne výstup jako níže:

mysql count()