SQL自动数行与分组

我不知道这是否可以做到,但是我需要做的是为特定的列创建行号,而不仅仅是一个简单的row_number(),因为我需要一个特定的模式或序列,并且不确定如何处理这个问题。下面是我在SQL中尝试的结果。

COL_1   COL_2   DESIRED RESULT
AAA     AAA         0
AAA     BBB         1
AAA     BBB         1   
AAA     CCC         2
AAA     DDD         3
ABB     ABB         0
ABB     BBB         1
ABB     CCC         2
ABB     CCC         2
ABB     DDD         3

解决方案:

我的理解是,我想枚举出 col_2col_1.

如果是这样,你可以使用 dense_rank():

select t.*,
       dense_rank() over (partition by col_1 order by col_2) - 1 as ranking
from t;

这假定您所希望的排序是基于 col_2 栏内 col_1.

给TA打赏
共{{data.count}}人
人已打赏
解决方案

Azure快照调试和Azure函数。

2022-5-13 0:00:26

解决方案

将十六进制数转换为颜色值

2022-5-13 0:00:28

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索