日期:2014-05-17  浏览次数:20737 次

所有类别中最大的为排序基准 如何实现?
现有数据如下:
name type num
铁路局 E 900
铁路局 C 700
铁路局 F 500
铁路局 D 100
电信局 E 2000
电信局 T 600
电信局 H 400
房管局 F 1300
房管局 D 1100
房管局 G 600

如何才能 让数据变成
电信局 E 2000
电信局 T 600
电信局 H 400
房管局 F 1300
房管局 D 1100
房管局 G 600
铁路局 E 900
铁路局 C 700
铁路局 F 500
铁路局 D 100

也就是所有单位最大的数量排序》》

------解决方案--------------------
SQL code

select name,type,num from 
(select name,type, num, rownum()over(partition by name order by num desc) from table1) a left join
(select name,max(num) max_num from table1 group by name) b
on a.name = b.name
order by b.max_num desc,num desc