zoukankan      html  css  js  c++  java
  • sql分组求最大值

    获取分组后取某字段最大一条记录
    方法一:(效率最高)
    select * from test as a
    where typeindex = (select max(b.typeindex)
    from test as b
    where a.type = b.type );

    方法二:(效率次之)
    select
    a.* from test a,
    (select type,max(typeindex) typeindex from test group by type) b
    where a.type = b.type and a.typeindex = b.typeindex order by a.type

    方法三:
    select a.* from test a inner join (select type , max(typeindex) typeindex from test group by type) b on a.type = b.type and a.typeindex = b.typeindex order by a.type

    方法四:(效率最低)
    select * from
    (
    select *,ROW_NUMBER() OVER(PARTITION BY type ORDER BY typeindex DESC) as num
    from test
    ) t
    where t.num = 1

  • 相关阅读:
    sql性能调优的注意项
    mybatis获取刚插入数据的ID
    mysql
    JQuery
    JS
    css
    web前端
    python爬虫
    socket编程
    python基础
  • 原文地址:https://www.cnblogs.com/lakeliu/p/11943946.html
Copyright © 2011-2022 走看看