Материал: Oracle_SQL_5

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам

Унарные агрегатные функции

Например, AVG (среднее значение)

сфразой DISTINCT, примененная к значениям 1, 1, 1 и 3 выдаст 2, а

при наличии фразы ALL выдаст 1,5.

По умолчанию предполагается фраза

ALL.

Функция COUNT (1)

Имеет 2 формата:

COUNT(*)

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

Запрос. Информация о скольких преподавателях имеется в базе данных?

SELECT COUNT(*) AS "Количество преподавателей"

FROM TEACHER;

Количество преподавателей

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

15

В простейший вариант использования COUNT – это подсчет количества всех строк в таблице или тех, которые удовлетворяют определенным условиям. В этом случае используется вариант COUNT(*). Отметим, что так в этом случае подсчитывается количество всех строк, то использование ключевых слов DISTINCT или ALL не допускается.

Функция COUNT (2)

Запрос. Сколько кафедр на факультете информатики?

SELECT COUNT(*) AS "Количество кафедр"

FROM FACULTY f, DEPARTMENT d

WHERE f.FacPK = d.FacFK AND LOWER(f.Name) = 'информатика';

Количество кафедр

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

3

Функция COUNT (3)

Запрос. Сколько различных номеров телефонов содержится в таблице

TEACHER?

SELECT COUNT(DISTINCT Tel) AS

"Количество телефонов"

FROM TEACHER;

Количество телефонов

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

4

Функция SUM (1)

Запрос. Какая суммарная ставка всех ассистентов?

SELECT SUM(Salary)

FROM TEACHER

WHERE LOWER(Post) = 'ассистент';

SUM(SALARY)

-----------

2200

Эта агрегатная функция подсчитывает сумму значений аргумента для всех строк входной таблицы. Аргумент должен иметь числовой тип или тип интервала. Допускается использовать ключевые слова DISTINCT и ALL. В качестве аргумента может выступать имя столбца или выражение над столбцами входной таблицы. Приведем примеры.

Источник: https://studfile.net/preview/16419787/