sql server分组编号生成

qoefvg9y  于 2021-07-24  发布在  Java
关注(0)|答案(1)|浏览(383)

我需要在SQLServer查询中找到一种方法,以便在数据从一个特定数据值切换到另一个特定数据值时生成分组数字。
根据下面的前两列及其排序方式,查询如何生成第三列中的数字?

当类型列从prim更改为其他任何列时,prim记录和下一个prim记录之间的所有记录都需要与上一个prim记录具有相同的编号。
如何在查询中做到这一点?

eni9jsuy

eni9jsuy1#

你可以用一个累加的和来做这件事-只需计算 'Prim' 每行的值:

select t.*,
       sum(case when type = 'Prim' then 1 else 0 end) over (order by primarykey) as generatednumber
from t;

相关问题