根据另一个列值创建行号列

Creating a row number column based on another columns value

我有以下数据:

这是一个有日期和 year/week 数字的日历,其中星期是我们的内部日历。我想做的是按最近的周数排序,然后是 rel_week_index=1,然后是前一周 rel_week_index=2,依此类推。我通过 ROW_NUMBER() OVER(PARTITION BY YEAR ORDER BY YEAR DESC) 来实现这一点然而,一旦你回到前一年,这个 rel_week_index 列从 1 开始,这不是我想要的。

理想情况下 year_week=202111rel_week_index=1year_week=202110rel_week_index=2 等等。

如果我没理解错的话,这是根据年和周组合降序计算行号的查询:

ROW_NUMBER() OVER( ORDER BY YEAR_week DESC)