当前位置:首页 > 开发 > 数据库 > 正文

选择某个属性值最大的那条记录(不仅仅包含指定属性,而是想要什么属性都可以)

发表于: 2015-06-30   作者:Rainbow702   来源:转载   浏览:
摘要: 好久好久不写SQL了,技能退化严重啊!!!   直入主题: 比如我有一张表,file_info, 它有两个属性(但实际不只,我这里只是作说明用): file_code, file_version 同一个code可能对应多个version 现在,我想针对每一个code,取得它相关的记录中,version 值 最大的那条记录, SQL如下: select *

好久好久不写SQL了,技能退化严重啊!!!

 

直入主题:

比如我有一张表,file_info,

它有两个属性(但实际不只,我这里只是作说明用):

file_code, file_version

同一个code可能对应多个version

现在,我想针对每一个code,取得它相关的记录中,version 值 最大的那条记录,

SQL如下:

select 
    *
from
    file_info fi1
where
    file_version = (select 
            max(fi2.file_version)
        from
            file_info fi2
        where
            fi2.file_code = fi1.file_code);

在网上看了好几个,都不知道他们有没有试过,明显是错的。

 

我上面的SQL是验证过的,而且我觉得有SQL基础的人一眼就看明白了的。

有问题的话,请留言。

选择某个属性值最大的那条记录(不仅仅包含指定属性,而是想要什么属性都可以)

  • 0

    开心

    开心

  • 0

    板砖

    板砖

  • 0

    感动

    感动

  • 0

    有用

    有用

  • 0

    疑问

    疑问

  • 0

    难过

    难过

  • 0

    无聊

    无聊

  • 0

    震惊

    震惊

版权所有 IT知识库 CopyRight © 2009-2015 IT知识库 IT610.com , All Rights Reserved. 京ICP备09083238号