Oracle关于rownum排序分页的问题

应该会有跟我一样的朋友有这样的需求,就是需要对select查询的集合先进行一次排序(如:按创建时间排序)然后让生成的rownum的顺序与排序后的顺序一致,但是用原始的rownum无法完成先排序后按排序后的顺序分页的需求,所以就用到了这个oracle函数ROW_NUMBER() OVER函数

demo:

select t.*,  ROW_NUMBER() OVER(order by createdate desc) rm from t

这样查询得到的rm 也就是rownum 就是根据创建时间createdate 倒序排序过后的顺序,分页的时候也就不会出现顺序错乱的问题。

这里说的比较简陋,不知道能不能帮到大家,希望可以吧,安啦!

你可能感兴趣的:(Orable)