double arrow

Функция COUNT

Подведение итогов по данным запроса

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

Основными на этом уроке будут следующие темы.

  • Что такое функции?
  • Использование функций.
  • Когда следует использовать функции?
  • Использование итоговых функций.
  • Суммирование данных с помощью итоговых функций.
  • Результаты использования функций.

Что такое итоговые функции?

Функции в SQL представляются ключевыми словами и используются для математических преобразований данных в столбце с целью соответствующего представления данных при выводе. Функция – это команда, всегда используемая в связи с именем столбца или выражением. В SQL имеется несколько типов функций. В ходе этого урока мы рассмотрим итоговые функции. Итоговая функция – это функция, используемая в операторе SQL для получения итоговой информации типа общего числа строк, сумм или среднего значения.

В ходе этого урока мы обсудим следующие итоговые функции.

  • COUNT
  • SUM
  • MAX
  • MIN
  • AVG

Функция COUNT используется для подсчета строк или значений в столбце, отличных от значения NULL. При использовании в запросах функция COUNT возвращает числовое значение. При использовании с опцией DISTINCT функция COUNT посчитает только разные строки (т. е. строки без учета повторений). По умолчанию используется опция ALL (противоположность DISTINCT), поэтому указывать ALL не обязательно. Повторяющиеся значения считаются, когда DISTINCT не указано. Другой опцией функции COUNT является звездочка (*). При использовании со звездочкой функция COUNT возвращает число всех строк в таблице, без исключения повторяющихся, не обращая внимания на возможно имеющиеся в столбце значения NULL

Синтаксис оператора функции COUNT следующий

COUNT (*) | (DISTINCT | ALL имя_столбца)

Команда DISTINCT не используется с COUNT(*), а используется только с COUNT(имя_столбца)

Пример_______________________________Значение____________________

SELECT COUNT (EMP_ID) Подсчет числа табельных номеров всех слу-

FROM EMPLOYEE__PAY_TBL; жащих

SELECT COUNT (DISTINCT SALARY) Подсчет только разных строк

FROM EMPLOYEE_PAY_TBL;

SELECT COUNT (ALL SALARY; Подсчет всех строк для SALARY

FROM EMPLOYEE_PAY_TBL;

SELECT COUNT (*) Подсчет всех строк таблицы EMPLOYEE_TBL

FROM EMPLOYEE_TBL;

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

SELECT COUNT(*) FROM EMPLOYEE_TBL;

COUNT (*)

---------

В следующем примере используется COUNT (EMP_ID), чтобы подсчитать число всех табельных номеров служащих в таблице Результат совпадает с результатом предыдущего запроса, поскольку каждый из служащих имеет свой табельный номер

SELECT COUNT(EMP_ID) FROM EMPLOYEE_TBL;

COUNT(EMP_ID)

------------

В следующем примере используется COUNT (PAGER) , чтобы подсчитать число всех служащих, имеющих номера пейджеров. Имеется только два таких служащих

SELECT COUNT(PAGER) FROM EMPLOYEE_TBL;

COUNT(PAGER)

------------

В следующем примере используется таблица ORDERS_TBL.

Подсчитаем в этой таблице число различных кодов товаров.

SELECT COUNT(DISTINCT(PROD_ID)) FROM ORDERS_TBL;

COUNT(DISTINCT(PROD_ID))

-----------------------

Для PROD_ID значение 222 встречается дважды, в результате подсчет различных значений возвращает б, а не 7.

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


Сейчас читают про: