Поделиться через


функция оконного ранжирования ntile

Область применения:флажок Databricks SQL флажок Databricks Runtime

Делит строки для каждой секции окна на n контейнеров, начиная от 1 до не более n.

Синтаксис

ntile([n])

Аргументы

  • n: необязательный литерал INTEGER больше 0.

Возвраты

Значение INTEGER.

По умолчанию значение n равно 1. Если n больше фактического количества строк в окне, необходимо использовать предложение ORDER BY с этой функцией.

Если порядок не уникален, результат будет недетерминированным.

Примеры

> SELECT a, b, ntile(2) OVER (PARTITION BY a ORDER BY b) FROM VALUES ('A1', 2), ('A1', 1), ('A2', 3), ('A1', 1) tab(a, b);
 A1 1   1
 A1 1   1
 A1 2   2
 A2 3   1