COUNT
Подсчитывает строки или значения выражения, не равные NULL.
PostgreSQL 17.5
COUNT(* | [DISTINCT] expression)Параметры
- *ключевое слово
- Считать все строки, включая строки с NULL
- DISTINCTключевое словонеобязательный
- Считать только уникальные значения expression
- expression
- Выражение, считаются только строки, где оно не равно NULL
Возвращаемое значение
Целое число (bigint); 0 для пустого набора, а не NULL
Примеры
Все строки таблицы
PostgreSQL 17.5
SELECT COUNT(*)
FROM FamilyMembers;Число разных статусов
PostgreSQL 17.5
SELECT COUNT(DISTINCT status)
FROM FamilyMembers;Все строки и значения без NULL
PostgreSQL 17.5
SELECT COUNT(*) AS all_teachers,
COUNT(middle_name) AS with_middle_name
FROM Teacher;Подробности
В отличие от MySQL, COUNT(DISTINCT a, b) с несколькими столбцами не поддерживается: уникальные пары считают через COUNT(DISTINCT (a, b)). Посчитать только строки, подходящие под условие, можно через COUNT(*) FILTER (WHERE ...).