oracle11 rownum 使用问题

2024-11-23 18:57:12
推荐回答(1个)
回答1:

具体原因想不清楚,


估计是你这儿的查询中,从外到里,多层查询 的 表名  的别名 都是T(t),大小写不区分的 原因


试试:

SELECT  Ttt*,rownum r  FROM (select * from 表1 tt
where tt.id in (select DISTINCT id from (select t.id from 表1 t where t.State=1 )) and 1=1  order by Id desc) Ttt
WHERE rownum<=20


另外:我觉得你这儿的查询中,完全没有必要这么多子查询啊:


但是我觉得你这儿的查询中,完全没有必要这么多子查询啊:


SELECT  Ttt*,rownum r  FROM (select * from 表1 ttwhere tt.State=1
    and 1=1  
order by Id desc) TttWHERE rownum<=20