2011-03-15 56 views
1

如何过滤最大RN这里过滤器最大的RN

select * 
from (
     select * 
     ,  row_number() over (partition by name order by ox asc) as rn 
     from YourTable 
     ) as SubQueryAlias 
where rn = 1 

其filering上述rn = 1

我想rn = max(rn)

回答

2

变化order by ox asc过滤到order by ox desc和使用rn = 1

select * 
from (
     select * 
     ,  row_number() over (partition by name order by ox desc) as rn 
     from YourTable 
     ) as SubQueryAlias 
where rn = 1 
0

Ch eck得到rn = max(rn):

select top 1 * from 
(select * , 
    row_number() over (partition by name order by ox asc) 
    as rn from YourTable) 
as SubQueryAlias 
order by rn desc