Печать      Открыть версию интерактивной справки в формате PDF


Предыдущий раздел

Следующий раздел

Функции агрегирования

Функции агрегирования служат для получения сводных результатов и применяются к набору значений. Выражения с вложенным агрегированием на основе применения функций агрегирования к столбцам, для которых в Oracle CRM On Demand Answers предварительно задано правило агрегирования по умолчанию, не допускаются.

Avg

Вычисление среднего значения выражения в наборе результатов. Аргументом должно быть числовое выражение.

Синтаксис

AVG (n_expression)

Здесь

n_expression

Любое выражение, возвращающее числовое значение.

AvgDistinct

Вычисление среднего значения выражения без учета повторений. Аргументом должно быть числовое выражение.

Синтаксис

AVG (DISTINCT n_expression)

Здесь

n_expression

Любое выражение, возвращающее числовое значение.

BottomN

Ранжирование n наименьших значений выражения, которое служит аргументом, от 1 до n, где 1 соответствует наименьшему числовому значению. Функция BOTTOMN применяется к значениям, возвращенным в наборе результатов.

Синтаксис

BOTTOMN (n_expression, n)

Здесь

n_expression

Любое выражение, возвращающее числовое значение.

n

Любое целое положительное число. Указывает количество числовых значений, ранжированных в наборе результатов; 1 соответствует самому низкому рангу.

ПРИМЕЧАНИЕ. Запрос может содержать только одно выражение BOTTOMN.

Count

Вычисление количества строк, в которых определено значение выражения. Как правило, выражение совпадает с именем столбца; в этом случае возвращается количество строк, содержащих определенные значения на пересечении с данным столбцом.

Синтаксис

COUNT (expression)

Здесь

expression

Любое выражение.

CountDistinct

Эта функция аналогична функции COUNT, но обеспечивает подсчет только различных значений.

Синтаксис

COUNT (DISTINCT expression)

Здесь

expression

Любое выражение.

Count (*) (CountStar)

Подсчет количества строк.

Синтаксис

COUNT(*)

Ниже приведен пример запроса и возвращаемого результата для случая, когда таблица с именем Facts содержит 200000000 строк.

SELECT COUNT(*) FROM Facts

COUNT(*)

200000000

Mavg

Вычисление скользящего среднего значения по последним n строкам данных, включая текущую строку.

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

Синтаксис

MAVG (numExpr, integer)

Здесь

numExpr

Любое выражение, возвращающее числовое значение.

integer

Любое целое положительное число. Указывает среднее значение по последним n строкам данных.

Max

Вычисление максимального значения (наибольшего числового значения) строк, соответствующих числовому выражению, которое служит аргументом.

Синтаксис

MAX (expression)

Здесь

expression

Любое выражение.

Median

Вычисление медианы (срединного значения) для строк, соответствующих числовому выражению, которое служит аргументом. При четном количестве строк медиана равна среднему значению для двух строк, занимающих срединное положение. Эта функция всегда возвращает вещественное число с двойной точностью.

Синтаксис

MEDIAN (n_expression)

Здесь

n_expression

Любое выражение, возвращающее числовое значение.

Min

Вычисление минимального значения (наименьшего числового значения) строк, соответствующих числовому выражению, которое служит аргументом.

Синтаксис

MIN (expression)

Здесь

expression

Любое выражение.

NTile

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

Синтаксис

NTILE (n_expression, n)

Здесь

n_expression

Любое выражение, возвращающее числовое значение.

n

Положительное (отличное от нуля) целое число, указывающее количество зон.

Функция возвращает целое число, указывающее ранг в пределах отчетного диапазона (кроме случаев, когда аргумент n_expression не определен).

При n=100 функция NTile возвращает так называемый процентиль (с ранжированием числовых значений от 1 до 100, где 100 соответствует верхней границе упорядоченного набора). Это значение отличается от результатов применения функции percentile в Oracle BI Server, которая соответствует процентному рангу в SQL 92 и возвращает значения от 0 до 1.

Percentile

Вычисление процентного ранга для каждого значения числового выражения, которое служит аргументом. Процентный ранг находится в диапазоне от 0 (1-й процентиль) до 1 (100-й процентиль) включительно.

При применении функции PERCENTILE процентиль вычисляется по значениям в наборе результатов запроса.

Синтаксис

PERCENTILE (n_expression)

Здесь

n_expression

Любое выражение, возвращающее числовое значение.

Rank

Вычисление ранга для каждого значения числового выражения, которое служит аргументом. Ранг 1 присваивается наибольшему числу, а каждый следующий ранг - следующему числу в порядке убывания (2, 3, 4,...). Равным значениям присваивается один и то же ранг (например, 1, 1, 1, 4, 5, 5, 7...).

При применении функции RANK ранг вычисляется по значениям в наборе результатов запроса.

Синтаксис

RANK (n_expression)

Здесь

n_expression

Любое выражение, возвращающее числовое значение.

StdDev

Функция STDDEV возвращает стандартное отклонение для набора значений. Возвращаемое значение всегда является вещественным числом с двойной точностью.

Синтаксис

STDDEV([ALL | DISTINCT] n_expression)

Здесь

n_expression

Любое выражение, возвращающее числовое значение.

  • Если задан параметр ALL, стандартное отклонение вычисляется по всем данным в наборе.
  • Если задан параметр DISTINCT, при вычислении не учитываются повторяющиеся значения.
  • По умолчанию (если не задан ни один из этих параметров) учитываются все данные.

С функцией STDDEV связаны еще две функции:

STDDEV_POP([ALL | DISTINCT] n_expression)

STDDEV_SAMP([ALL | DISTINCT] n_expression)

STDDEV и STDDEV_SAMP являются синонимами.

StdDev_Pop

Возвращает стандартное отклонение для набора значений по формуле вычисления дисперсии и стандартного отклонения для генеральной совокупности.

Синтаксис

StdDev_Pop([ALL | DISTINCT] numExpr)

Здесь

numExpr

Любое выражение, возвращающее числовое значение.

  • Если задан параметр ALL, стандартное отклонение вычисляется по всем данным в наборе.
  • Если задан параметр DISTINCT, при вычислении не учитываются повторяющиеся значения.

Sum

Вычисление суммы всех значений числового выражения, которое служит аргументом.

Синтаксис

SUM (n_expression)

Здесь

n_expression

Любое выражение, возвращающее числовое значение.

SumDistinct

Вычисление суммы всех значений числового выражения, которое служит аргументом, без учета повторений.

Синтаксис

SUM(DISTINCT n_expression)

Здесь

n_expression

Любое выражение, возвращающее числовое значение.

TopN

Ранжирование n наибольших значений выражения, которое служит аргументом, от 1 до n, где 1 соответствует наибольшему числовому значению.

Функция TOPN применяется к значениям, возвращенным в наборе результатов.

Синтаксис

TOPN (n_expression, n)

Здесь

n_expression

Любое выражение, возвращающее числовое значение.

n

Любое целое положительное число. Указывает количество ранжированных значений, отображаемых в наборе результатов; 1 соответствует наивысшему рангу.

Запрос может содержать только одно выражение TOPN.


Опубликовано в Октябрь 2016 Copyright © Oracle, 2005, 2016 гг. Все права защищены.Legal Notices.