Аналитическая оконная функция cume_dist
Область применения: Databricks SQL Databricks Runtime
Возвращает позицию значения относительно всех значений в секции.
Синтаксис
cume_dist() over_clause
Аргументы
- over_clause: предложение, описывающее окно. См. статью "Функции окна".
Возвраты
Значение DOUBLE.
Предложение OVER оконной функции должно содержать предложение ORDER BY.
Если порядок не уникален, дубликаты имеют общую относительную позднюю позицию.
Функция cume_dist() over(order by expr)
аналогична, но не идентична функции rank() over(order by position) / count(*)
, так как оконная функция ранжирования rank формирует самый ранний абсолютный порядок.
Примеры
> SELECT a, b, cume_dist() OVER (PARTITION BY a ORDER BY b)
FROM VALUES ('A1', 2), ('A1', 1), ('A2', 3), ('A1', 1) tab(a, b);
A1 1 0.6666666666666666
A1 1 0.6666666666666666
A1 2 1.0
A2 3 1.0