RT,需求是“按时间排序,取前10条数据”我写了如下三种方式:方法一:可行
select out.* 
from (
select rownum rn,tt.*
from (
select kk.*
from k_knowledges kk
order by kk.createdate desc) tt ) out
where out.rn <11方法二:可行
select rt.*
from (
select row_number() over(order by s.createdate desc) d,s.* from k_knowledges s ) rt
where rownum < 11方法三:不可行
select rt.*
from (
select row_number() over(order by s.createdate desc) d,s.* from k_knowledges s ) rt
where rt.d < 11
为啥方法三的结果 与 方法二不同?   多谢·