zoukankan      html  css  js  c++  java
  • 一个很基本的分页Procedure echo

    很基本很基本很基本很基本很基本很基本很基本很基本,没办法!

    Code:

     1 /*
     2 
     3 假设500行数据,分页,每页10行,可分为50页。
     4 
     5 设计procedure实现该需求
     6 
     7 
     8     传入三个参数, 一个每页显示的条数pageSize;一个是当前页pageCount;
     9     
    10     @pageSize;每页显示的条数 = 10
    11     
    12     @pageCount;当前页 = 2
    13     
    14     
    15     2*10 = 20 
    16     
    17     10 +1 = 11;
    18     
    19     11 ~ 20
    20     
    21     ((2-1)*10 + 1)  ~  2*10
    22     
    23     ((pageCount-1)*pageSize+1) ~  pageCount*pageSize
    24     
    25     where condtion between ((pageCount-1)*pageSize+1) and pageCount*pageSize
    26 */
    27 
    28 create procedure PaginationDate
    29 
    30     @pageSize int, --每页显示的条数
    31     
    32     @pageCount int --当前页
    33     
    34 as
    35 
    36     
    37     SELECT 
    38            id =IDENTITY(int,1,1), --为数据集指定行自增列,从1开始
    39            t.name,
    40            t.price
    41     
    42         INTO #tempTable --将本次查询的结果集翻入临时表中
    43       
    44         FROM table1 t
    45             WHERE t.price >100
    46       
    47   
    48     SELECT *
    49         FROM #tempTable --从临时表中筛选
    50         WHERE id Between ((pageCount-1)*pageSize+1) and (pageCount*pageSize)

                      --用上面推出的算法公式来计算本次查询该返回哪些数据行,通过id的范围来筛选 51 --between ((pageCount-1)*pageSize+1) and pageCount*pageSize 52 53 54 DROP TABLE #tempTable --完成后删除临时表 55 56 RETURN 0 57 58 GO
  • 相关阅读:
    Ubuntu 16.04 swoole扩展安装注意!!!
    go mod使用指南
    基于gin框架-验证码demo
    go(基于gin开发提升效率)--Air
    go mod路径引入并代码提示
    golang在win10下安装问题(一)
    win10下beego安装注意坑(一)
    API统一管理平台-YApi
    vim编辑
    swool安装(centos7)
  • 原文地址:https://www.cnblogs.com/mangonic/p/2515405.html
Copyright © 2011-2022 走看看