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