最近一直在研究存储过程和函数,感觉这趟水有点浑,所以我决定要趟这趟浑水。

一些是一个sql server的分页存储过程,可以结合页面设计来进行理解
假设场景有,上一页 下一页两个按钮,排序方式悬着下拉框一个,当前页数文本框一个,每页显示记录数文本框一个,
好 ,好戏上演:

CREATE PROCEDURE dbo. Fen Ye
(
@Page int,//当前页数
@RecsPerPage int,//每页显示记录数
@Sort VARCHAR(255)//排序方式
)
AS

DECLARE @SQL nVARCHAR(4000)

SET @SQL='SELECT TOP '+CAST(@RecsPerPage AS VARCHAR(20))+' * FROM Customers A WHERE A.ID NOT IN

(SELECT TOP '+CAST((@RecsPerPage*(@Page-1)) AS VARCHAR(20))+' ID FROM Customers B ORDER BY ID '+ @Sort +') ORDER BY ID '+ @Sort

//此方法借鉴了博客园某位老兄的方法 在此也感谢他的分享

//此处将top后面只能跟常量

//我在写的时候 SELECT TOP 10*(2-1) FROM Customers 这句怎么都不能通过,最后查了查说的是top后面只能跟常量
//所以我就将SQL语句写成了上面的形式,将变量进行拼接

EXEC sp_ExecuteSql @SQL

SELECT @Page AS Page
RETURN @Page

GO
//此处返回的@Page可以用于上一页 下一页的操作,返回的@Page可以方便的用于翻页功能,使用于winform和web开发

//此存储过程还可以进一步扩展,可以将多个表关联查询将查询结果写入临时表,再对临时表进行分页操作。

//如有疑问请留言

转载于:https://www.cnblogs.com/tzy080112/archive/2009/02/12/1388885.html

一个利用sql 语句来实现分页的存储过程相关推荐

  1. 利用SQL语句实现分析需求(1)

    利用SQL语句实现分析需求 数仓的设计 原始数据的拆分 利用SQL实现分析需求 流量分析 TOPN问题的求解 页面访问分析 每日最热门页面 访客分析 数仓的设计 维度建模的基本概念: 维度表: 用于描 ...

  2. 利用SQL语句创建、删除、修改和查看数据表

    [技术导图] 1.连接Mysql服务:mysql -u root -p; 2.使用数据库:use teacherdb; 3.创建student表(无约束条件):create table student ...

  3. mysql中利用sql语句修改字段名称,字段长度等操作(亲测)

    在网站重构中,通常会进行数据结构的修改,所以添加,删除,增加mysql表的字段是难免的,有时为了方便,还会增加修改表或字段的注释,把同字段属性调整到一块儿.这些操作可以在phpmyadmin或者别的m ...

  4. sql语句转化为分页查询的一种实现

    /*** 将sql语句转化为分页查询** */public static String addfy4oracle(String sql, int start, int limit, List args ...

  5. 利用SQL语句对数据进行操作:插入、更新与删除数据行

    My目录 前言 一.T-SQL的组成 二.插入数据行 1.一次插入一行数据 2.一次插入多行数据 三.更新数据行 四.删除数据行 前言 结构化查询语言(Structured Query Languag ...

  6. oracle分页查询sql语句通用,oracle分页查询sql语句,oracle分页查询sql语句详解

    oracle分页查询sql语句,oracle分页查询sql语句详解,Oracle分页查询sql语句 Oracle中分页和MySql中的分页不同,MySql中的分页使用关键字limit即可,相对简单一点 ...

  7. mysql 查询数据库索引语句_利用SQL语句查询数据库中所有索引

    本章我们就要讲解一下如何利用sql语句来查询出数据库中所有索引明细.当然了,我们可以在microsoft sql server management studio中选择"表"- & ...

  8. 通过sql语句查询实现分页

    通过sql语句分页 如:SELECT * FROM users limit 3,2 从第4条记录开始后续显示两行,索引从0开始 (服务器机制)该方式的优缺点如下:   优点:操作便捷(利用服务器内存) ...

  9. 利用SQL语句自动生成序号的两种方式

    1.首先,我们来介绍第一种方式: ◆查询的SQL语句如下: select row_number() over (order by name) as rowid, sysobjects.[name] f ...

最新文章

  1. 记录一下从标定模型中读取参数
  2. 小米Max怎么刷入开发版获得root超级权限
  3. IOS常用正则表达式
  4. 浏览器外部署Silverlight更新检查失败的原因及对策
  5. 计算机在线采集数据注意,全站仪数据采集和传输中的常见问题解决方案
  6. python代理池_用Python搭建一个简单的代理池
  7. java集合——集合与数组间的转换+算法
  8. 前端学习(3148):react-hello-react之getSnapBeforeUpdate
  9. mysql json mybatis_mybatis支持json,Spring boot配置
  10. c++图片背景替换为白色_4种方法,3秒快速更换证件照背景!你还要去照相馆花冤枉钱吗?...
  11. 在win7上对ipad录屏
  12. GPS测速仪,一个APP就可以搞定
  13. 【汇总】全球最吸金的30大连接器厂商
  14. SqlServer 获取工作日(周六、周日休息,周六日不休息,周六不休息)
  15. python flappy bird游戏
  16. 快速幂取余算法总结详解
  17. java计算机毕业设计在线交友系统2021源码+mysql数据库+系统+lw文档+部署
  18. 音乐歌单Android,仿网易云音乐歌单界面 Header滑动效果
  19. 埃尔米特插值及其代码
  20. 腾讯股票实时数据接口

热门文章

  1. spring中最重要的一些Aware接口
  2. de-emphasis
  3. python基础入门--input标签、变量、数字类型、列表、字符串、字典、索引值、bool值、占位符格式输出...
  4. HTTPS学习笔记一----HTTPS的基础理论知识
  5. Ruby编程语言学习笔记4
  6. 怎样把Image数据放入数据库
  7. C# TabControl中Tab放於左邊並正常顯示TabText(
  8. [Axios] FETCH中的基础语法
  9. JavaScript学习笔记(五)--深拷贝浅拷贝
  10. 入门机器学习(十七)--编程作业-K-means和PCA(Python实现)