ntile
排名窗口函数
适用于: Databricks SQL Databricks Runtime
将每个窗口分区的行分割为从 1 到至多 n
的 n 个桶。
语法
ntile([n])
参数
n
:大于 0 的可选整数文本。
返回
一个整数。
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