SQL NTILE()函数是否可以仅将最大输入值分组?例如,当我使用NTILE(4)时,我不希望函数将具有2或3个匹配项的值分组,而仅将具有4个匹配项的值分组。
我很难做到这一点。
我的数据集看起来像这样
id timetraveled
1 5
1 5
1 5
1 5
2 6
2 6
我期望NTILE(4)返回以下内容:
ntile id timetraveled
1 1 5
2 1 5
3 1 5
4 1 5
1 2 6
1 2 6
但是它会给我:
ntile id timetraveled
1 1 5
2 1 5
3 1 5
4 1 5
1 2 6
*2* 2 6
有人知道如何解决我的问题吗?
请勿使用ntile()
。您可以自己计算: