首页 >数据库 >mysql教程 >Oracle数据库用SQL实现快速分页

Oracle数据库用SQL实现快速分页

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB原创
2016-06-07 17:24:581163浏览

Oracle采用嵌套3层的查询语句结合rownum来实现分页,这在Oracle上是最快的方式,如果只是一层或者两层的查询语句的rownum不能支持

Oracle采用嵌套3层的查询语句结合rownum来实现分页,,这在Oracle上是最快的方式,如果只是一层或者两层的查询语句的rownum不能支持order by。

程序:
public String getLimitString(String sql) {
StringBuffer pagingSelect = new StringBuffer(100);
pagingSelect.append("select * from ( select row_.*, rownum rownum_ from ( ");
pagingSelect.append(sql);
pagingSelect.append(" ) row_ where rownum ?");
return pagingSelect.toString();
}

sql实例:

select * from ( select row_.*, rownum rownum_ from (select * from scott.emp ) row_ where rownum 2;

linux

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn