Справочник по функциям

COUNT

Подсчитывает строки или значения выражения, не равные NULL.

MySQL 8.1
COUNT(* | [DISTINCT] expr)

Параметры

*ключевое слово
Считать все строки, включая строки с NULL
DISTINCTключевое словонеобязательный
Считать только уникальные значения expr
expr
Выражение, считаются только строки, где оно не равно NULL

Возвращаемое значение

Целое число (BIGINT); 0 для пустого набора, а не NULL

Примеры

Все строки таблицы

MySQL 8.1
SELECT COUNT(*)
FROM FamilyMembers;
COUNT(*)
8

Число разных статусов

MySQL 8.1
SELECT COUNT(DISTINCT status)
FROM FamilyMembers;
COUNT(DISTINCT status)
4

Все строки и значения без NULL

MySQL 8.1
SELECT COUNT(*) AS all_teachers,
	COUNT(middle_name) AS with_middle_name
FROM Teacher;
all_teacherswith_middle_name
1513

Подробности

COUNT(*) и COUNT(1) работают одинаково и считают все строки. COUNT(expr) пропускает NULL, а пустую строку считает. В MySQL COUNT(DISTINCT a, b) принимает несколько выражений и считает уникальные сочетания.

Смотрите также

Где изучить