SQL

Сколько записей в базе данных данной структуры. Как узнать

При работе с базами данных иногда возникает потребность узнать сколько записей в них содержится на данный момент времени. Причем иногда нужно произвести подсчет абсолютно всех доступных записей, чтобы оценить загрузку той или иной БД, а иногда нужно подсчитать записи, которые соответствуют определенным условиям.

Для той или иной ситуации, чтобы узнать сколько записей в базе данных, можно использовать всего одну функцию COUNT. Функция одна, но использовать ее можно по-разному. Например:

  • если функцию COUNT использовать в запросе в «чистом» виде без дополнительных условий, тогда можно подсчитать абсолютно все записи в таблице;

  • функцию COUNT можно использовать совместно с командой WHERE, где в команде WHERE указываются условия, по которым вести подсчет записей в таблице.

Чуть ниже рассмотрим несколько простых примеров, как определить сколько записей содержится в базе данных.

Определяем сколько записей в базе данных

Представим, что наша база данных содержит некую таблицу, где мы ведем учет своих клиентов.  Итак, наша таблица «customers» выглядит следующим образом:

Идентификатор, ID

Customers_name

Customers_age

Customers_purchase

1

Дмитрий Федорович

24

4000

2

Петр Алексеевич

26

5000

3

Василий Алибабаевич

24

5000

4

Николай  Павлович

31

10000

5

Иван Николаевич

28

5000

6

Кирилл Мефодиевич 

29

10000

 

Естественно, строк и столбцов в таблице с клиентами может быть очень много. Давайте посмотрим, как можно считать записи в таблице, используя разные вариации функции COUNT и ее условий.

К примеру, мы можем посчитать всех покупателей, у которых возраст будет 24 года. В этом случай SQL-запрос будет таким:

SELECT COUNT(*) as count FROM customers WHERE customers_age=24

 

В ответ на данный запрос мы получим результат «2», потому что в нашей таблице есть всего 2 покупателя с таким возрастом.

Мы можем посчитать количество разных чеков наших покупателей. То есть мы будем считать количество разных сумм, которые оставили наши клиенты. Код SQL-запроса будет следующий:

SELECT COUNT(DISTINCT customers_purchase) as count FROM customers

В ответе на данный запрос мы получим ответ 3, потому что в нашей таблице всего 3 разных объема покупок: 4000, 5000 и 10000.

С помощью COUNT можно составлять и более сложные SQL-запросы. Например, в одном запросе мы можем посчитать сколько у нас разных возрастов в таблице и сколько у нас разных чеков покупки. В этом случае SQL-запрос будет выглядеть следующим образом:

SELECT

  COUNT(DISTINCT costumers_age) as count_first,

  COUNT(DISTINCT costumers_purchase) as count_second

FROM costumers

 

В результате такого запроса мы получим два столбца с названиями «count_first» с количеством возрастов «5» и «count_second» с количеством разных чеков «3».

Мы можем подсчитать общее количество записей в базе данных без особых условий. В этом случае SQL-запрос будет выглядеть следующим образом:

SELECT COUNT(*) as count FROM costumers

В ответ на этот запрос мы получим цифру «6», так как в нашей таблице всего 6 записей. Но тут есть одна хитрость. Когда мы указываем символ «*»(звездочка), тогда мы активируем подсчет абсолютно всех записей, даже тех, которые содержат в своих аргументах «NULL». Но  вам не всегда нужно подсчитывать строки с «нулевым» значением. В этом случае в качестве аргумента функции COUNT нужно указать идентификатор какого-то столбца, тогда в результате будут отражаться только строки, которые содержат какие-то данные в указанном столбце. Например:

SELECT COUNT(customers_purchase) as count FROM costumers

 В этом случае в результате мы получим сколько записей в базе данных имеют заполненные ячейки в столбце «customers_purchase». Важно помнить об этом. Потому что подсчеты строк в обоих случаях могут отличаться. К примеру, пользователь не совершил покупку, поэтому в столбце «customers_purchase» не заполнена ячейка. В этом случае при подсчете с COUNT(*) она попадет в результат, а при подсчете COUNT(customers_purchase) — нет.

Заключение

Как посчитать, сколько  записей в базе данных? Самый верный способ — это использовать функцию COUNT. С помощью этой функции можно посчитать абсолютно все записи в базе данных: со значениями «NULL» и «NOT NULL». Помимо этого, совместно с функцией COUNT можно использовать команду WHERE и задавать условия подсчета записей, что делает работу функции COUNT очень гибкой.

Схожие статьи

Что такое MariaDB, где используется эта система управления
SQL

Что такое MariaDB, где используется эта система управления

SQL за 20 минут
SQL

SQL за 20 минут

SQL

Как подключиться к базе данных Oracle, где находится строка подключения

SQL

Как сохранить базу SQL Server в SQL скрипт? Как сохранить проект SQL?

×