zoukankan      html  css  js  c++  java
  • 利用top构造Sql Server分页查询

    使用Sql Server分页查询是SQL数据库最常见的操作之一,下面将为您介绍两种利用top构造Sql Server分页查询的方法,供您参考。

    Sql Server中,假设一个查询sql为querySql,该sql为任意条件的组合,我们把它当作子查询结果表,可利用Sql Server的top来构造通用Sql Server分页查询:

    1. if (pageInfo.getPageNum() == 1) {     
    2.       pagenatedSql = "select top " + pageInfo.pageSize + " * from (" + sql + ") as t1 " ;     
    3. }     
    4. else {     
    5.       pagenatedSql = "select top " + pageInfo.pageSize + " * from (" + sql + ") as t1 " +     
    6.             " where (t1." + indexKey + " > (select max(t3." + indexKey + ")" +      
    7.             " from (select top " + (pageInfo.pageNum - 1) * pageInfo.pageSize + " t2." + indexKey + " from (" + sql + ") as t2 order by t2." + indexKey + ") as t3" +     
    8.             " )) order by t1." + indexKey;     
    9. }   

    其中pageInfo.getPageNum()为当前页号(从1开始);pageInfo.getPageSize()为每页行数;indexKey为表中索引列,通常为递增的主键。
    第二种方式: pagesize: 每页显示记录数 cureentpage:当前页数

    1. select * from (   select TOP pagesize * FROM ( SELECT TOP pagesize*cureentpage   * from user_table   ORDER BY id ASC ) as aSysTable   ORDER BY id DESC ) as bSysTable   ORDER BY id ASC   

    以上就是利用top构造Sql Server分页查询的方法。

  • 相关阅读:
    Ubuntu搭建flask服务器, 部署sklearn 机器学习模型
    Jupyter-notebook 显示图片的两种方法
    Linux多版本opencv指定 & CMake中 find_package()的原理解析
    使用C++调用pytorch模型(Linux)
    Arch / Manjaro Linux下 Opencv 编译 配置 查看
    获取路径下所有特定格式文件列表
    Pycharm相对路径
    opencv 与操作 bitwise_and
    vim学习
    opencv 旋转 点旋转 以及 逆旋转
  • 原文地址:https://www.cnblogs.com/rinack/p/3042058.html
Copyright © 2011-2022 走看看