oracle和mysql分页

mysql:SELECT * FROM TABLE_NAME limit(21, 40)

oracle:

①SELECT * FROM ( SELECT A.*, ROWNUM RN FROM (SELECT * FROM TABLE_NAME) A WHERE ROWNUM <= 40 ) WHERE RN >= 21
②SELECT * FROM ( SELECT A.*, ROWNUM RN FROM (SELECT * FROM TABLE_NAME) A ) WHERE RN BETWEEN 21 AND 40
对比这两种写法,绝大多数的情况下,第一个查询的效率比第二个高得多。
posted @ 2016-12-07 17:31  mabiao008  阅读(108)  评论(0编辑  收藏  举报