• 数据库分页--MySQL数据库


    关于实现MySQL分页的最简单的方法就是利用mysql数据库的limit函数:limit [offset,] rows

     SELECT * FROM 表名称 LIMIT M,N 

    limit 子句可以被用于强制 select 语句返回指定的记录数。

    limit 接受一个或两个数字参数。参数必须是一个整数常量。如果给定两个参数,第一个参数指定第一个返回记录行的偏移量,第二个参数指定返回记录行的最大数目。初始记录行的偏移量是 0(而不是 1).为了与 postgresql 兼容,mysql 也支持句法: limit # offset #。

    select * from table limit 5,10; // 检索记录行 6-15


    为了检索从某一个偏移量到记录集的结束所有的记录行,可以指定第二个参数为 -1:
    select * from table limit 95,-1; // 检索记录行 96-last.


    如果只给定一个参数,它表示返回最大的记录行数目:
    select * from table limit 5; //检索前 5 个记录行
    //换句话说,limit n 等价于 limit 0,n。


    1. select * from tablename <条件语句> limit 100,15  从100条记录后开始取15条 (实际取取的是第101-115条数据)
    2. select * from tablename <条件语句> limit 100,-1   从第100条后开始-最后一条的记录
    3. select * from tablename <条件语句> limit 15   相当于limit 0,15 .查询结果取前15条数据

    1. public List<Product> getProducts(int pageNo, int pageSize)  
    2. {  
    3. Connection conn=null;  
    4. ResultSet rs=null;  
    5. List<Product> list=new ArrayList<Product>();  
    6. conn=DB.getConn();  
    7. String sql="select * from product limit "+(pageNo-1)*pageSize+","+pageSize;  
    8.  
    9. rs=DB.executeQuery(conn, sql);  
    10. try  
    11. {  
    12. while(rs.next())  
    13. {  
    14. Product p=new Product();  
    15. p.setId(rs.getInt("id"));  
    16. p.setName(rs.getString("name"));  

    如果是几千上万数据,就直接使用mysql自带的函数 limit的用法就ok了,如果是100万以上的数据,可能就要讲方法了,

     select * from news where id>=(select id from news limit 490000,1) limit 10; 

  • 相关阅读:
    mysql导入导出数据过大命令
    thinkphp条件查询
    php表单提交安全方法
    ubuntu软件(查看文件差异)
    thinkphp if标签
    thinkphp导出报表
    jquery.easing.js下载地址
    水平手风琴切换效果插件亲自试过很好用
    li ie6/7 3px bug
    placeholder兼容IE6-9代码
  • 原文地址:https://www.cnblogs.com/liwenjuan/p/3202288.html
Copyright © 2020-2023  润新知