zoukankan      html  css  js  c++  java
  • oracle分页

    用easyui做界面的时候,在datagrid里面显示数据,用mysql的分页方式,发现在oracle中不可以使用。于是查了一些资料。

    http://kingsen5.blog.163.com/blog/static/189301290201142591225277/

    这篇博文里面,总结的比较详细,使用第一种方法,还是挺好用的。

    SELECT * FROM 
    (
    SELECT A.*, ROWNUM RN 
    FROM (SELECT * FROM TABLE_NAME) A 
    WHERE ROWNUM <= 40
    )
    WHERE RN >= 21

    在easyui中,传到后台的有两个参数,一个是page,一个是rows。前者是多少页,后者是每页多少行数据。

    在oracle中,需要的是数据的index位置,第一条数据和最后一条数据。如上分页中,显示21-40这些数据。所以计算出这两个位置就可以了。

            int currentpage = Integer.parseInt((page == null || page == "0") ? "1": page);//第几页
            int pagesize = Integer.parseInt((rows == null || rows == "0") ? "10": rows);//每页多少行
            map.put("startindex", (currentpage-1)*pagesize);
            map.put("endindex", currentpage*pagesize);

    就这几行代码,获取到开始位置和结束位置就ok了,作为参数,传入sql中,就可以获取到分页的数据了。

  • 相关阅读:
    LeetCode 72. Edit Distance
    LeetCode 71. Simplify Path
    LeetCode 70. Climbing Stairs
    LeetCode 69. Sqrt(x)
    Ubuntu系统测评
    itchat 爬了爬自己的微信通讯录
    logistic回归模型
    多元线性回归模型
    可乐鸡翅制作难点
    梯度下降算法&线性回归算法
  • 原文地址:https://www.cnblogs.com/juepei/p/3954211.html
Copyright © 2011-2022 走看看