我有一个包含40行lac的表,其中有一列“playcount”,最小值为1,最大值约为17000。
我想通过添加一个列将这个表分成15个组,该列的值将根据“playcount”列从1到15。
Hive有一个功能,可以做类似的事情。如果我在这里 NTILE(15) OVER (ORDER BY playcount) AS mygroup
,它确实会将其分解,但基于playcount值的计数,并且由于较低的值要多得多(超过50%的值小于5),因此分组是这样的:超过35的值的组值为15(最大值)。
我想根据playcount而不是playcount值进行分组。
在Hive里也有类似的可能。
谢谢
1条答案
按热度按时间yks3o0rb1#
我能想到的一种可能性是
playcount%15 as mygroup
.