Функция COUNT

Функция COUNT подсчитывает количество записей в таблице. Условие, по которому будут выбираться записи, задается с помощью команды WHERE. Команда WHERE не является обязательной, если ее не указать - будут подсчитаны все записи в таблице.

Синтаксис

Подсчет всех записей:

SELECT COUNT(*) FROM имя_таблицы WHERE условие

Подсчет всех записей, где заданное поле не равно NULL:

SELECT COUNT(поле) FROM имя_таблицы WHERE условие

Только уникальные значения поля:

SELECT COUNT(DISTINCT поле) FROM имя_таблицы WHERE условие

Таблицы для примеров

таблица employees
id
айди
name
имя
age
возраст
salary
зарплата
1 user1 23 400
2 user2 25 500
3 user3 23 500
4 user4 30 900
5 user5 27 500
6 user6 28 900

Пример

Давайте подсчитаем в таблице всех работников с возрастом 23 года:

SELECT COUNT(*) as count FROM employees WHERE age=23

Результат выполнения SQL запроса:

count
результат подсчета
2

Пример

Давайте подсчитаем в таблице количество разных зарплат (их будет 3 штуки: 400, 500 и 1000):

SELECT COUNT(DISTINCT salary) as count FROM employees

Результат выполнения SQL запроса:

count
результат подсчета
3

Пример

Давайте подсчитаем в таблице одновременно количество разных возрастов и количество разных зарплат:

SELECT COUNT(DISTINCT age) as count1, COUNT(DISTINCT salary) as count2 FROM employees

Результат выполнения SQL запроса:

count1
количество возрастов
count2
количество зарплат
5 3

Меняем таблицу для примеров

таблица employees
id
айди
name
имя
age
возраст
salary
зарплата
1 user1 23 NULL
2 user2 25 500
3 user3 23 NULL

Пример

Давайте подсчитаем количество всех записей:

SELECT COUNT(*) as count FROM employees

Результат выполнения SQL запроса:

count
результат подсчета
3

А теперь подсчитаем количество зарплат, не равных NULL:

SELECT COUNT(salary) as count FROM employees

Результат выполнения SQL запроса:

count
результат подсчета
1

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

  • команду DISTINCT,
    которая позволяет подсчитывать только уникальные значения поля
  • команду GROUP BY,
    которая позволяет группировать записи