【发布时间】:2020-09-25 03:42:04
【问题描述】:
长话短说,我将一些数据分组到不同的段中,并注意到一列中的迁移使用NTILE(10) OVER(ORDER BY column_name DESC) 分成十分位数。
此列中大约 50% 的值是 0,这意味着前 5 个十分位数都具有相同的值。
NTILE() 函数如何处理这样的情况?
我会天真地假设它按值排序并将其分成 10 个偶数部分,这意味着它或多或少随机地将 0 分配给十分位数,但我无法找到解释这一点的文档特殊案例。
额外问题——如果值是 NULL 而不是 0,行为会改变吗?
【问题讨论】: