锁定老帖子 主题:最新+最简单Oracle分页查询法
精华帖 (0) :: 良好帖 (0) :: 新手帖 (4) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2009-11-02
最后修改:2009-11-02
chensunhao 写道 一般都是第二种,效率要高些
别误导新人,在百万级数据查询,第二种会等死人,比第一种慢差不多10倍 |
|
返回顶楼 | |
发表时间:2009-12-07
误导别人,很明显第一种的好。
|
|
返回顶楼 | |
发表时间:2009-12-07
/** * Oracle 分页sql语句生成方法 * @param sql sql语句 * @param pageIndex 页下标 * @param pageSize 页面大小 * @return */ public static String createOraclePagingSql(String sql, int pageIndex, int pageSize){ int m = (pageIndex-1) * pageSize; int n = m + pageSize; StringBuffer pagingSelect = new StringBuffer(100); pagingSelect.append("select * from ( select row_.*, rownum rownum_ from ( ") .append(sql) .append(" ) row_ where rownum <=") .append(n) .append(") where rownum_ >") .append(n); return pagingSelect.toString(); } |
|
返回顶楼 | |
发表时间:2009-12-10
对oracle不是很熟,这种查找是不是主键是连续的?
|
|
返回顶楼 | |
发表时间:2010-01-25
还是第一种是对的,第2种有性能问题,真的,如何在加上order by,你就知道啦
|
|
返回顶楼 | |