ORACLE笔试题:存在表T(a,b,c,d),要根据字段c排序后取第21—30条记录显示,请给出sql

如题所述

1.select * from (select c.*,rownum as rn from (select * from t order by c desc) c) where rn between 21 and 30;

2.select * from (select * from test order by c desc) x where rownum < 30
minus
select * from (select * from test order by c desc) y where rownum < 20 order by 3 desc
二者相比,下边的Minus性能稍差。
温馨提示:内容为网友见解,仅供参考
第1个回答  2011-03-27
SELECT
a, b, c, d
FROM
(SELECT rownum AS no, a,b,c,d FROM T ORDER BY c) as tmpView
WHERE
no >= 21 AND no <30
第2个回答  2020-06-29
SELECT a,b,c,d FROM T ORDER BY c DESC LIMIT 20,10
相似回答