Oracle给查询结果增加序列号

时间:2019-03-23 14:58:33   收藏:0   阅读:625

在oracle中,需要加一个序列号,首先想到是用rownum这个关键字,比如sql如下

select rownum,t.* from table t

以上sql如果不增加排序,这个数据没有问题,一旦增加排序,序列号就错乱了

select rownum,t.* from table t order by t.stamp

解决方法如下:
第一种解决办法:

select  rownum,a.*  from (select t.* from table t order by t.stamp)  a

第二种解决办法:

select row_number() over (order by t.stamp) rn,t.*  from table t

个人更倾向于第二种

原文:https://www.cnblogs.com/zwgblogs/p/10583908.html

评论(0
© 2014 bubuko.com 版权所有 - 联系我们:wmxa8@hotmail.com
打开技术之扣,分享程序人生!