кодесурса
«SQL

Функция SQL COUNT ()

script1adsense2code
script1adsense3code

Функция COUNT ()

Функция SQL COUNT () возвращает количество строк в таблице, удовлетворяющих критериям, указанным в предложении WHERE. Он устанавливает количество строк или ненулевых значений столбцов.
COUNT () возвращает 0, если не было совпадающих строк.

Синтаксис:

 COUNT (*)
COUNT (выражение [ALL | DISTINCT])

Приведенный выше синтаксис является общим стандартным синтаксисом SQL 2003 ANSI. Это помогает понять, как используется функция SQL COUNT (). Но разные поставщики баз данных могут по-разному применять функцию COUNT ().

Ниже вы можете видеть, что MySQL, PostgreSQL и Microsoft SQL Server используют тот же синтаксис, что и приведенный выше. Но DB2 и Oracle немного отличаются.

В целом, вы можете использовать * или ALL или DISTINCT или какое-либо выражение вместе с COUNT, чтобы СЧИТАТЬ число строк по какому-либо условию или по всем строкам, в зависимости от аргументов, которые вы используете вместе с функцией COUNT ().

Поддержка СУБД: функция COUNT ()

СУБД команда
MySQL поддержанный
PostgreSQL поддержанный
SQL Server поддержанный
оракул поддержанный

Синтаксис DB2 и Oracle:

 COUNT ({* | [DISTINCT] выражение}) OVER (window_clause)

Параметры:

название Описание
ВСЕ Относится ко всем значениям. ALL возвращает количество ненулевых значений.
DISTINCT Игнорируемые повторяющиеся значения и COUNT возвращает количество уникальных ненулевых значений.
выражение Выражение состоит из одной константы, переменной, скалярной функции или имени столбца, а также может быть фрагментами запроса SQL, которые сравнивают значения с другими значениями. Выражение любого типа, кроме текста или изображения. Агрегатные функции и подзапросы не допускаются.
* СЧИТЫВАЕТ все строки в целевой таблице независимо от того, содержат ли они значения NULL.

Синтаксическая диаграмма - функция COUNT ()


На последующих страницах мы обсудили, как применять COUNT () с различными предложениями SQL. Для этих приложений мы использовали Oracle 10g Express Edition.

Важная вещь о функции COUNT ():

Когда * используется для COUNT (), все записи (строки) считаются COUNTed, если некоторое содержимое NULL, но COUNT (column_name) не считает COUNT запись, если ее поле имеет значение NULL. Смотрите следующие примеры:

SQL COUNT строки в таблице

В следующем примере используется символ звездочки (*), за которым следует SQL COUNT (), который указывает все строки таблицы, даже если есть какое-либо значение NULL.

Пример таблицы: заказы


Чтобы получить количество строк в таблице 'orders', можно использовать следующую инструкцию SQL:

Код SQL:

SELECT COUNT(*)
FROM orders;

Выход:

 COUNT (*)
---------
       34

Иллюстрированная презентация:

«SQL

Выберите COUNT (*) из нескольких таблиц

Следующий запрос COUNT количество строк из двух разных таблиц (здесь мы используем сотрудников и отделов) с помощью команды COUNT (*).

Код SQL:

SELECT(
      SELECT COUNT(*)
	  FROM   employees
	  ) AS Total_Employees,
	  (SELECT COUNT(*)
	  FROM   departments
	  ) AS No_Of_Departments
FROM dual

Выход:

 TOTAL_EMPLOYEES NO_OF_DEPARTMENTS
--------------- -----------------
            107 27

SQL COUNT () с именем столбца

В этом примере функция SQL COUNT () исключает значения NULL для определенного столбца, если столбец указан в качестве аргумента в скобках функции COUNT.

Образец таблицы: listofitem


Чтобы получить количество строк в таблице listofitem со следующим условием:

1. COUNT количество строк для столбца «coname»

можно использовать следующий оператор SQL:

Код SQL:

SELECT COUNT(coname)      
FROM listofitem;

Выход:

 COUNT (CONAME)
-------------
            2

Объясните:

Приведенный выше оператор СЧИТАЕТ те строки для столбца coname, которые не равны NULL.

Строки SQL COUNT с определенным пользователем заголовком столбца

Получить количество строк в таблице «заказов» при следующем условии -

1. результат должен отображаться с заголовком «Количество рядов»,

можно использовать следующий оператор SQL:

Код SQL:

SELECT COUNT( *) as "Number of Rows"
FROM orders;

Выход:

 Количество рядов
--------------
            36

SQL COUNT () с предложением where

Предложение WHERE может использоваться вместе с функцией SQL COUNT (). выбрать конкретные записи из таблицы в соответствии с заданным условием.

Пример:

Пример таблицы: заказы


Чтобы получить количество строк в таблице «заказов» при следующем условии -

1. ord_amount против заказа более 1500,

можно использовать следующий оператор SQL:

SELECT COUNT( * ) as "Number of Rows"
FROM orders
WHERE ord_amount>1500;

Выход:

 Количество рядов
--------------
            22

Применение функции COUNT ()

На последующих страницах мы обсудили, как применять COUNT () с различными предложениями SQL. Для этих приложений мы использовали Oracle 10g Express Edition.

Страница COUNT with DISTINCT обсуждает, как применять функцию COUNT с DISTINCT, а также обсуждает, как применять функцию COUNT с предложением ALL. В отличие от использования *, когда используется ALL, значения NULL не выбираются.

На странице COUNT HAVING рассказывается, как применить функцию COUNT с предложением HAVING, а также с HAVING и GROUP BY.

Страница COUNT с GROUP BY описывает, как применить функцию COUNT с GROUP BY в порядке возрастания и в порядке убывания.

Примечание. Выводы указанного оператора SQL, показанного здесь, взяты с использованием Oracle Database 10g Express Edition.

Вот слайд-презентация всех агрегатных функций.

Упражнения по SQL

Хотите улучшить вышеуказанную статью? Вносите свои заметки / комментарии / примеры через Disqus.

Предыдущая: Агрегатные функции
Следующая: COUNT с отличным

Новый контент: Composer: менеджер зависимостей для PHP , R программирования


script1adsense4code
script1adsense5code
disqus2code
script1adsense6code
script1adsense7code
script1adsense8code
buysellads2code