oracle rank()用法

原来表数据

现在需求是   每位userinfoid发表的最新一条数据

(select smallblog.*,rank() over(partition by userinfoid order by addtime desc) r from smallblog )

结果为(最后一列会给出排序字段的等级)

进一步处理一下就可以了

select * from 
(
select smallblog.*,rank() over(partition by userinfoid order by addtime desc) r from smallblog ) where r<=1

 如果查询的时间有是相同的那么给出的排序字段等级就会相同

 

 这个时候我们可以使用  dense_rank()

参考http://space.itpub.net/13379967/viewspace-481811

 

原文地址:https://www.cnblogs.com/dooom/p/1649507.html