第一种写法
select * from (
select t.*,rownum rr from PERSONAL_INVOICE_APPLY t order by APPLY_ID DESC )
A where a.rr>=1 and a.rr<=4第二种写法
select * from (
select rownum rr,A.* FROM
(select * from PERSONAL_INVOICE_APPLY ORDER BY APPLY_ID DESC) A
WHERE ROWNUM <=4
) B WHERE B.rr >=1以上两种写法有什么不同啊?
因此你的第一种写法:
先编号之后,又排序了,这样编出的顺序就不一定是你想要的排好序的顺序。而第二种方法:
是现将记录排好序之后再编号,这样编号的顺序就是你最终想要的了。 区别就在此了。
rownum rr在後。第二种方法:
rownum rr在先。
我运行两个SQL语句一样啊结果