无ORDER BY排序的写法。
SELECT *
FROM (SELECT ROWNUM AS rowno, t.*
FROM emp t
WHERE hire_date BETWEEN TO_DATE ('20060501', 'yyyymmdd')
AND TO_DATE ('20060731', 'yyyymmdd')
AND ROWNUM <= 20) table_alias
WHERE table_alias.rowno >= 10;
有ORDER BY排序的写法。
SELECT *
FROM (SELECT tt.*, ROWNUM AS rowno
FROM ( SELECT t.*
FROM emp t
WHERE hire_date BETWEEN TO_DATE ('20060501', 'yyyymmdd')
AND TO_DATE ('20060731', 'yyyymmdd')
ORDER BY create_time DESC, emp_no) tt
WHERE ROWNUM <= 20) table_alias
WHERE table_alias.rowno >= 10;
本文摘自Honey_Potter的博客,提供自己学习。
本文介绍了两种SQL分页查询的方法:一种是没有使用ORDER BY排序的情况下的分页查询,另一种则是带有ORDER BY排序条件的分页查询。这两种方法都通过ROWNUM进行记录编号,并通过子查询的方式实现了对指定范围内的数据进行检索。
212

被折叠的 条评论
为什么被折叠?



