首先在oracle里面的序号一般使用rownum
select rownum,t.* from T_USER_BASICINFO t
但需要用其中某个字段排序的情况,rownum就不能按顺序排序了。这里用u_level字段排序
select rownum,t.* from T_USER_BASICINFO t order by t.u_level
解决办法:
第一种:
select rownum,a.*
from (select t.* from T_USER_BASICINFO t
order by t.u_level
) a
第二种:
select row_number() over (order by t.u_level) rn,t.* from T_USER_BASICINFO t
另外,如果想知道其中某条记录在结果中的排序号,用
select tt.rn,tt.* from
(select row_number() over (order by t.u_level) rn,t.* from T_USER_BASICINFO t ) tt
where tt.user_id ='10000000044'