Oracle给查询结果增加序列号
在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
个人更倾向于第二种