Percentile_Cont (Azure Stream Analytics)

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

Синтаксис

PERCENTILE_CONT ( numeric_literal )
      OVER ( ORDER BY order_by_expression [ ASC | DESC ] )

Аргументы

numeric_literal

Процентиль, который необходимо вычислить. Значение должно находиться в диапазоне от 0 до 1.

OVER ( ORDER BY order_by_expression [ ASC | DESC] )

Указывает список числовых значений, который следует отсортировать и по которому будет вычисляться процентиль. Разрешен только один аргумент order_by_expression. Выражение должно иметь значение BIGINT или FLOAT. По умолчанию задан порядок сортировки по возрастанию.

Типы возвращаемых данных

Float

Примеры

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

SELECT PERCENTILE_CONT(0.95) OVER (ORDER BY serviceAvailability)
FROM testInput
GROUP BY SlidingWindow(hours, 1)

Пример входных данных:

Регионы ServiceAvailability
A 0,98
B 0.93
C 0,78
D 0,99
E 0.89

Пример результата:

0.988