获取分组后取某字段最大一条记录(求每个类别中最大的值的列表)

    xiaoxiao2021-03-25  112

    获取分组后取某字段最大一条记录 方法一:(效率最高) 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
    转载请注明原文地址: https://ju.6miu.com/read-4274.html

    最新回复(0)