首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从具有相同id的表中选择最大状态

从具有相同id的表中选择最大状态
EN

Stack Overflow用户
提问于 2021-04-28 11:31:09
回答 1查看 45关注 0票数 0

我有桌子

代码语言:javascript
复制
PartNo| Revision Status
501.   1.       Current
501.   2.       Internal
502.   1.       Internal
502.   2.       Trail

想要从

代码语言:javascript
复制
1. PartNo 501 having status is current 
2. Part 502 having status is Trail

基于状态偏好,我需要根据状态序列获取部件号

代码语言:javascript
复制
1. Current
2. Trail

。在Oracle SQL中。

EN

回答 1

Stack Overflow用户

发布于 2021-04-28 13:02:05

一种选择如下(第1-6行中的样本数据;查询从第7行开始):

代码语言:javascript
复制
SQL> with test (partno, revision, status) as
  2    (select 501, 1, 'current'  from dual union all
  3     select 501, 2, 'internal' from dual union all
  4     select 502, 1, 'internal' from dual union all
  5     select 502, 2, 'trail'    from dual
  6    )
  7  select partno, revision, status
  8  from (select partno, revision, status,
  9          row_number() over (partition by partno order by revision desc) rn
 10        from test
 11       )
 12  where rn = 1;

    PARTNO   REVISION STATUS
---------- ---------- --------
       501          2 internal
       502          2 trail

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

https://stackoverflow.com/questions/67293374

复制
相关文章

相似问题

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