繁体   English   中英

如何在不获取旧版本记录的情况下获得最高版本的select记录?

[英]How to select records which have the highest version without getting the old versions record?

我有下面的单个表,其中我们有相同的 3 个不同版本的记录,我们需要获取最高版本的记录。

桌子

Id  name   value   verion
1   raj    java      8
2   raj    stack     4
3   prem   abc       6
4   raj    google    1
5   prem   pqr       11

还有很多这样的

Output 应该是这样的

Id  name   value   verion
1   raj    java      8
5   prem   pqr       11

我已经尝试通过以下 Stack 问题找到解决方案,但我使用的是单表,无法找到解决方案

为多个组选择每组记录中的最新和特定版本

使用子查询,我们可以找到每个名称的最大版本。

select m.*
from my_table m
inner join (select name,
                   max(verion) as mx_ver
            from my_table 
            group by name
           ) as mx_ on mx_.name=m.name and mx_.mx_ver=m.verion;

https://dbfiddle.uk/NavF5X_K

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM