Обновлено:
Подсчёт количества записей
Когда таблица содержит тысячи строк, визуально определить их количество невозможно. Подсчёт количества записей – базовая операция, которую выполняют аналитики, разработчики и бухгалтеры: от оценки размера базы данных до проверки полноты импортированных данных.
Как посчитать количество записей в SQL
SQL – язык запросов к реляционным базам данных. Функция COUNT – основной инструмент подсчёта строк.
Базовый подсчёт всех записей
SELECT COUNT(*) FROM таблица;
Звёздочка * означает «считать все строки», включая те, где есть значения NULL. Это самый быстрый способ узнать общий объём данных.
Подсчёт по столбцу
SELECT COUNT(email) FROM клиенты;
Подсчёт по конкретному столбцу исключает строки со значением NULL. Если в столбце email у 5 клиентов пустое поле, COUNT(email) вернёт результат на 5 меньше, чем COUNT(*).
Подсчёт уникальных записей
SELECT COUNT(DISTINCT город) FROM клиенты;
Ключевое слово DISTINCT убирает дубликаты перед подсчётом. Полезно для определения количества уникальных значений: городов, категорий, статусов.
Подсчёт с условием
SELECT COUNT(*) FROM заказы WHERE статус = 'выполнен';
Условие WHERE фильтрует строки до подсчёта. Результат – количество записей, соответствующих критерию.
Несколько условий в одном запросе
SELECT
COUNT(*) AS всего,
COUNT(CASE WHEN статус = 'выполнен' THEN 1 END) AS выполнено,
COUNT(CASE WHEN статус = 'в работе' THEN 1 END) AS в_работе
FROM заказы;
Конструкция CASE внутри COUNT позволяет получить несколько подсчётов за один проход по таблице.
Подсчёт по группам
SELECT город, COUNT(*) AS количество
FROM клиенты
GROUP BY город;
GROUP BY разбивает записи на группы и считает количество в каждой. Результат – таблица с числом записей по городам, категориям или другому признаку.
Как посчитать количество записей в Excel
В Excel для подсчёта записей используют несколько функций, каждая со своей спецификой.
СЧЁТ – только числа
=СЧЁТ(A1:A100)
Функция СЧЁТ (в англоязычной версии COUNT) считает ячейки, содержащие числовые значения. Текст, пустые ячейки и значения ошибок игнорируются.
СЧЁТЗ – все непустые ячейки
=СЧЁТЗ(A1:A100)
СЧЁТЗ (COUNTA) считает все заполненные ячейки: числа, текст, даты, логические значения. Это основной инструмент для подсчёта записей в таблицах с текстовыми данными.
СЧЁТЕСЛИ – подсчёт по условию
=СЧЁТЕСЛИ(B1:B100; "выполнен")
=СЧЁТЕСЛИ(C1:C100; ">1000")
СЧЁТЕСЛИ (COUNTIF) считает ячейки, соответствующие одному критерию. Условие может быть точным совпадением, сравнением или шаблоном с подстановочными символами (*, ?).
СЧЁТЕСЛИМН – подсчёт по нескольким условиям
=СЧЁТЕСЛИМН(B1:B100; "выполнен"; C1:C100; ">1000")
СЧЁТЕСЛИМН (COUNTIFS) применяет несколько критериев одновременно. Каждая пара «диапазон – условие» сужает выборку.
Подсчёт уникальных записей
В Excel 365 и 2021:
=СЧЁТ(УНИК(A1:A100))
В более старых версиях – формула массива:
=СУММ(1/СЧЁТЕСЛИ(A1:A100; A1:A100))
Подсчёт записей в других инструментах
Google Таблицы
Основные функции аналогичны Excel: COUNT, COUNTA, COUNTIF, COUNTIFS. Дополнительная функция COUNTUNIQUE считает уникальные значения без сложных формул:
=COUNTUNIQUE(A1:A100)
Python
Библиотека pandas для анализа данных:
import pandas as pd
df = pd.read_csv('data.csv')
len(df) # общее количество записей
df['город'].nunique() # уникальные значения
df.groupby('город').size() # по группам
Командная строка Linux
Подсчёт строк в CSV-файле:
wc -l data.csv
Команда wc -l считает количество переводов строк. Первая строка с заголовками учитывается, поэтому из результата вычтите 1 для получения числа записей.
Какой способ выбрать
| Задача | Инструмент | Функция |
|---|---|---|
| Общее число строк в базе | SQL | COUNT(*) |
| Записи без пустых полей | SQL | COUNT(столбец) |
| Уникальные значения | SQL | COUNT(DISTINCT столбец) |
| Записи по условию | SQL | COUNT + WHERE |
| Число заполненных ячеек | Excel | СЧЁТЗ |
| Ячейки с числами | Excel | СЧЁТ |
| Подсчёт по критерию | Excel | СЧЁТЕСЛИ |
| Уникальные в Google | Google Таблицы | COUNTUNIQUE |
| Строки в файле | Linux | wc -l |
| Анализ данных | Python | len(df) |
Типичные ошибки при подсчёте записей
NULL-значения. В SQL COUNT(столбец) пропускает NULL, а COUNT(*) – нет. Если столбец содержит пустые значения, результаты различаются. Решение – явно указывать * или столбец в зависимости от задачи.
Пустые ячейки в Excel. Функция СЧЁТ не считает ячейки с текстом. Если столбец содержит названия или статусы, используйте СЧЁТЗ.
Скрытые строки. Фильтр в Excel скрывает строки, но функции СЧЁТЗ и СЧЁТЕСЛИ считают и скрытые ячейки. Для подсчёта только видимых используйте ПРОМЕЖУТОЧНЫЕ.ИТОГИ(3; диапазон).
Дублирование при объединении таблиц. SQL-запрос с JOIN может увеличить число строк, если в присоединяемой таблице несколько совпадений. Проверяйте результат через COUNT(*) до и после объединения.
Статья носит информационный характер. Актуальность функций и синтаксиса уточняйте в документации используемого инструмента.
Часто задаваемые вопросы
Чем отличается COUNT от COUNTA в Excel?
COUNT считает только числовые ячейки, а COUNTA – все непустые, включая текст и логические значения. Для подсчёта записей с текстом используйте COUNTA.
Как посчитать только уникальные записи?
В SQL – SELECT COUNT(DISTINCT столбец). В Excel – комбинация функций СУММ и СЧЁТЕСЛИ или функция УНИК в Office 365. В Google Таблицах – COUNTUNIQUE.
Можно ли посчитать записи по условию в SQL?
Да, используйте WHERE для фильтрации до подсчёта или CASE внутри COUNT для разных условий в одном запросе: COUNT(CASE WHEN условие THEN 1 END).
Почему COUNT(*) и COUNT(столбец) дают разные результаты?
COUNT(*) считает все строки, включая NULL. COUNT(столбец) пропускает строки со значением NULL в указанном столбце. Разница появляется только при наличии NULL.