Oracle,SQL,原来程序的sql使用ROWNUM,可以在结果中自动生成序号列,展现在报表上。但加上排序选项后,序号就乱了,如何解决呢。。。
原来程序的sql使用ROWNUM,可以在结果中自动生成序号列,展现在报表上。
如下:
select ROWNUM,t.* from adheader t
但现在要对结果增加排序,要增加order by dwg_date,dwg_no,结果的序号列就乱了。
后来终于找到了实现方法,使用row_number()函数,并加上Order By排序就可以了。
如下:
select row_number() over(ORDER BY dwg_date,dwg_no) as seq_no, t.*
from adheader t
ORDER BY dwg_date,dwg_no
参考资料: https://www.cnblogs.com/henuyuxiang/p/6702386.html
【版權聲明】
本文爲原創,遵循CC 4.0 BY-SA版權協議!轉載時請附上原文鏈接及本聲明。
原文鏈接:https://tdlib.com/am.php?t=G0AM8tYb0QTC Tag: Oracle SQL