有人可以告诉我如何创建一个视图,该视图对于按其他列分组的值列有一个额外的RANK列吗?
ID
BALANCE
GROUP2
GROUP1
GROUP0
unique (GROUP0, GROUP1, GROUP2)
问题是VIEW计算的'RANK'应按GROUP
s(例如0,1,2)分组。
ID
BALANCE
GROUP2
GROUP1
GROUP0
RANK
感谢。
编辑-----------------------
对不起,我应该多解释一下。
RANK
列是每组(GROUP0,GROUP1,GROUP2)的“按余额排名”
所以我希望看起来像
ID BALANCE GROUP0 GROUP1 GROUP2 RANK
-----------------------------------------
1000 0 0 0 1
999 0 0 0 2
1000 1 0 0 1
999 1 0 0 2
感谢。
答案 0 :(得分:2)
不是一个明确的问题。 这是你想要的吗?
Select
id,
balance,
group1,
group2,
group3,
row_number() over(partition by group1, group2, group3) as rank
from your_table.
您可以根据需要在over子句中添加订单,例如:
row_number() over(partition by group1, group2, group3 order by id) as rank