Funkcja MySQL count() służy do zwracania liczby wyrażeń. Pozwala nam policzyć wszystkie wiersze lub tylko niektóre wiersze tabeli spełniające określony warunek. Jest to typ funkcji agregującej, której typem zwracanym jest BIGINT. Ta funkcja zwraca 0, jeśli nie znajdzie żadnych pasujących wierszy.
Funkcji zliczania możemy używać w trzech formach, które wyjaśniono poniżej:
- Liczyć (*)
- Liczba (wyrażenie)
- Liczba (odrębna)
Omówmy każdy szczegółowo.
LICZBA(*) Funkcja: Ta funkcja używa instrukcji SELECT do zwracania liczby wierszy w zestawie wyników. Zestaw wyników zawiera wszystkie wiersze o wartości innej niż null, null i zduplikowane.
instrukcja Java
LICZBA(wyrażenie) Funkcja: Ta funkcja zwraca zestaw wyników bez wierszy Null jako wyniku wyrażenia.
COUNT(odrębne wyrażenie) Funkcja: Ta funkcja zwraca liczbę odrębnych wierszy, które nie zawierają wartości NULL w wyniku wyrażenia.
Składnia
Poniżej przedstawiono składnię funkcji COUNT():
SELECT COUNT (aggregate_expression) FROM table_name [WHERE conditions];
Wyjaśnienie parametrów
wyrażenie_zagregowane: Określa kolumnę lub wyrażenie, którego wartości NON-NULL będą zliczane.
wystawianie Javy
Nazwa tabeli: Określa tabele, z których chcesz pobrać rekordy. W klauzuli FROM musi znajdować się co najmniej jedna tabela.
GDZIE warunki: Jest to opcjonalne. Określa warunki, jakie muszą zostać spełnione, aby rekordy zostały wybrane.
Przykład funkcji MySQL count().
Rozważmy tabelę o nazwie „pracownicy”, która zawiera następujące dane.
Przyjrzyjmy się, jak działają funkcje count(). MySQL'a .
Przykład 1
Wykonaj następujące zapytanie, które za pomocą funkcji COUNT(wyrażenie) obliczy całkowitą liczbę pracowników dostępnych w tabeli:
mysql> SELECT COUNT(emp_name) FROM employees;
Wyjście:
Przykład2
przewijanie myszy nie działa
Wykonaj następującą instrukcję, która zwróci wszystkie wiersze z tabeli pracowników, a klauzula WHERE określi wiersze, których wartość w kolumnie emp_age jest większa niż 32:
mysql> SELECT COUNT(*) FROM employees WHERE emp_age>32;
Wyjście:
Przykład 3
W tej instrukcji zastosowano funkcję COUNT(wyrażenie odrębne), która zlicza wiersze o wartości innej niż null i odrębne w kolumnie emp_age:
mysql> SELECT COUNT(DISTINCT emp_age) FROM employees;
Wyjście:
Funkcja MySQL Count() z klauzulą GROUP BY
Możemy także użyć funkcji count() z klauzulą GROUP BY, która zwraca liczbę elementów w każdej grupie. Na przykład poniższa instrukcja zwraca liczbę pracowników w każdym mieście:
mysql> SELECT emp_name, city, COUNT(*) FROM employees GROUP BY city;
Po pomyślnym wykonaniu otrzymamy wynik jak poniżej:
przetwarzanie hackerskie
Funkcja MySQL Count() z klauzulami HAVING i ORDER BY
Zobaczmy inną klauzulę, która wykorzystuje klauzule ORDER BY i Have z funkcją count(). Wykonaj następującą instrukcję, która poda nazwisko pracownika, który ma co najmniej dwa lata w tym samym wieku i posortuje ich na podstawie wyniku zliczenia:
mysql> SELECT emp_name, emp_age, COUNT(*) FROM employees GROUP BY emp_age HAVING COUNT(*)>=2 ORDER BY COUNT(*);
Ta instrukcja da wynik jak poniżej: