如果是9I,可以用分析函数:row_number()over(),rank()over(),dense_rank()over()中的一种.
eg:
select name,score
from (
select name,score,row_number()over(partition by name order by score desc) as rn
from tablename
)
where rn<=4
这样就是取分数最大的几条记录.
eg:
select name,score
from (
select name,score,row_number()over(partition by name order by score desc) as rn
from tablename
)
where rn<=4
这样就是取分数最大的几条记录.
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货