首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >根据行SQL的类型为每一行分配等级

根据行SQL的类型为每一行分配等级
EN

Stack Overflow用户
提问于 2015-02-10 17:48:07
回答 1查看 39关注 0票数 1

我的桌子

DiagnosisCodes

代码语言:javascript
复制
Sequence  Type        Value
 1         Diagnosis   123
 22        Diagnosis   456
 38        Principal   111
 4         Diagnosis   789
 53        Principal   222

我需要从诊断表中进行选择,并根据序列和类型为每一行分配一个等级。最低序列得到了Type.For实例的最低秩:序列1是“诊断”类型的最低序列,因此它的秩应该是1,同样,对于“诊断”类型来说,序列4是第二低的,所以它的排序应该是2。对于“主”类型,序列38是最低的,所以应该是1等。

我期望的产出:

代码语言:javascript
复制
Sequence  Type        Value Rank
 1         Diagnosis   123  1
 22        Diagnosis   456  3
 38        Principal   111  1
 4         Diagnosis   789  2
 53        Principal   222  2

我正在考虑使用枢轴或分区,但不确定这是否是最好的方法。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-02-10 17:50:45

使用Row_Number窗口函数创建秩

代码语言:javascript
复制
select sequence , Type, Value,
       row_number() over(partition by Type order by sequence) As [Rank] 
From yourtable

注意:tie的情况下,如果您需要相同的rank,那么使用Dense_Rank而不是Row_number

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28438368

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档