这个问题看起来很简单,但我无法理解它。 这是针对SQL Server的。
what I have in a table : What I need as a output .
cksum id cksum id
-2162514679 204 -2162514679 204 1
-2162514679 207 -2162514679 207 1
-2162514679 215 -2162514679 215 1
-2162514679 218 -2162514679 218 1
-2162514679 221 -2162514679 221 1
-2160286363 257 -2160286363 257 2
-2160286363 260 -2160286363 260 2
-2160286363 332 -2160286363 332 2
-2162514679 335 -2162514679 335 3
-2162514679 338 -2162514679 338 3
-2126731931 348 -2126731931 348 4
-2126731931 387 -2126731931 387 4
表格按id排序,我需要一个紧随id列但分组cksum的排名,注意,由于ID的存在,cksum可能返回到先前的值,但仍具有其排名(对于值2162514679而言,它在开头出现了5次,下面又出现了一次,它们构成了两个不同的排名)。我已经花了几个小时去做这件事情,使用row_number进行分区或使用CTE似乎很愚蠢,但是没有找到实现此操作的逻辑...有人知道答案吗?