从通用分页存储过程[ROWCOUNT方式]抽出适合自己需求的分页过程

通用分页存储过程很实用,但毕竟不是全适用于一些环境,譬如我遇到过一种情况,需要先外链两个表,然后再关联几个表,总之参数传递很烦人,这里不细说了,现在只谈实现查询后,怎么分页的简单技巧
1,建立用户函数
CREATE   function   F_xxxx(@ID  nvarchar(36),@Key nvarchar(36),......)
{
......//这里查询出你需要分页的所有数据,可以带参数来查询
}
建函数的目的是为了整合查询的数据,主要是可以带入参数,很方便.
注,函数中没有exec语句,不可以拼接SQL,不过可以调用存储过程.
2,建分页存储过程,具体框架和说明如下
/**//*080520  by zjyaoo@live.cn*/  
CREATE PROCEDURE dbo.SPCustomPaging
    (
    
@PageSize int =15--页面大小
    @PageNumber int =1--页码
    @传入到函数的参数1 nvarchar(36), --传入到函数的参数,这里参数个数根据建的函数来决定
    @传入到函数的参数2 nvarchar(36), --传入到函数的参数,这里参数个数根据建的函数来决定
    @StrWhere nvarchar(2000)=' AND 1=1' , --条件,注:传入的@StrWhere需要replace.(''','''')处理
    @RecordCount int =0  output  --返回总的条数
    )
AS
DECLARE @strStartRow int
IF @PageNumber < 1
    
SET @PageNumber = 1
SET @strStartRow =(@PageNumber - 1)* @PageSize + 1  --设置其实页码
--
--
DECLARE @str_Count_SQL nvarchar(500
SET @str_Count_SQL= 'SELECT @TotalCount=count(*) FROM  [F_建立的的函数]('''+@函数参数1+''','''+@函数参数2+''') Where 1=1 '  + @StrWhere  --1=1,用于外接条件
EXEC sp_executesql @str_Count_SQL,N'@TotalCount int=0 output',@RecordCount output  --获取总的条数
Declare @Sql nvarchar(1000)
set @Sql =
'DECLARE  @SortColumn  nvarchar(255)  --建几个临时变量
DECLARE  @SortNullValue  nvarchar(255) 
DECLARE  @PKStartValue  nvarchar(255)  
SET @SortNullValue = CAST(
'''' as int)
SET ROWCOUNT  
'+  cast(@strStartRow   as  nvarchar(5))  +'   --整数转为字符
SELECT @SortColumn= isNull([函数中的分类字段] ,@SortNullValue), @PKStartValue = [函数中的关键字段]    FROM   [F_建立的的函数](
'''+@函数参数1+''','''+@函数参数2+''')   Where 1=1   '+@StrWhere +'  ORDER BY [函数中的分类字段], [再加个函数中的关键字段] Desc 
SET ROWCOUNT   
'+ cast(@PageSize   as  nvarchar(5)) +'    --整数转为字符
SELECT * FROM  F_ManufacturerDiscount(
'''+@OrgID+'''
 WHERE  (isNull([函数中的分类字段],@SortNullValue)>@SortColumn or (isNull([函数中的分类字段],@SortNullValue)=@SortColumn and [函数中的关键字段]<=@PKStartValue))  
'+@StrWhere +'  ORDER BY [函数中的分类字段],[函数中的关键字段] Desc
RETURN
'
Exec (@Sql)
GO

转载于:https://www.cnblogs.com/zjy/archive/2008/05/20/1203589.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/496825.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

量子计算机就要来了,它真的能改变世界吗?

来源&#xff1a;网易科技概要&#xff1a;量子计算机的理论运行速度远远超出任何传统的超级计算机。在位于纽约市以北约50英里处僻静乡村中的一个小型实验室内&#xff0c;天花板下缠绕着错综复杂的管线和电子设备。这一堆看似杂乱无章的设备是一台计算机。它与世界上的任何一…

Fiddler (二) : Script 的 用法

Fiddler (二) Script 用法(转)&#xff1a;http://www.cnblogs.com/mrzhoushare/articles/4953592.html Fiddler 高级用法&#xff1a;Fiddler Script 与 HTTP 断点调试&#xff1a;http://www.cnblogs.com/hushaojun/p/5644645.html 通过前一篇博客 【Fiddler教程】&#xff0…

CSDN与易观联合发布《2017-2018中国人工智能产业路线图》

来源&#xff1a;机器人大讲堂下载链接:https://pan.baidu.com/s/1ViNbtAi-wGJbLURyYp30TA 密码:a3dz未来智能实验室是人工智能学家与科学院相关机构联合成立的人工智能&#xff0c;互联网和脑科学交叉研究机构。未来智能实验室的主要工作包括&#xff1a;建立AI智能系统智商评…

网站时间显示

网站时间显示2<STYLE>A.menuitem {}{ COLOR: menutext; TEXT-DECORATION: none } A.menuitem:hover {}{ COLOR: highlighttext; BACKGROUND-COLOR: highlight } DIV.contextmenu {}{ BORDER-RIGHT: 2px outset; BORDER-TOP: 2px outset; Z-INDEX: 999; VISIBILITY: hidde…

直击2018AWE:智能语言交互大厮杀、老品牌争先搭建平台、第三方平台迅速崛起

来源&#xff1a;物联网智库一年一度家电盛宴&#xff0c;中国家电及消费电子博览会&#xff08;AWE&#xff09;在上海新国际博览中心拉开帷幕&#xff01;一大批智能家电产品不断发酵&#xff0c;白电、黑电、小家电等让人应接不暇。除了不断精进的颜值外&#xff0c;科技感更…

数据安全架构设计与实战~如何加密结构化数据

针对结构化数据&#xff08;数据库、key-value等&#xff09;&#xff0c;加密主要有两种方式&#xff1a; 1、应用层字段加密&#xff0c;数据在入库前加密&#xff0c;直接向数据库中写入字段密文&#xff1b; 2、存储系统透明加密&#xff08;静态加密&#xff09;&#x…

浙江大学吴朝晖:脑机融合系统综述

来源&#xff1a; 神经科技本文发表于《生命科学》&#xff08;Chinese Bulletin of Life Sciences&#xff09;第26卷 第6期 2014年6月DOI: 10.13376/j.cbls/2014090脑机融合系统综述吴朝晖*&#xff0c;俞一鹏&#xff0c;潘 纲&#xff0c;王跃明(浙江大学计算机科学与技术…

数据安全架构设计与实战~思维导图

#原图 System.out.println("https://www.processon.com/view/link/619cccede0b34d032a78237d");

apt-get、apt、yum、dpkg、rpm

apt-get 命令详解(中文)以及实例&#xff1a;http://blog.51yip.com/linux/1176.html linux yum命令详解&#xff1a;http://www.cnblogs.com/chuncn/archive/2010/10/17/1853915.html 配置 yum 源的两种方法&#xff1a;http://www.cnblogs.com/shuaixf/archive/2011/11/30/22…

下一版Win10,微软人工智能平台Windows ML要和你见面了

原作 Kam VedBratRoot 编译自 Windows blog量子位 出品 | 公众号 QbitAI今日&#xff0c;微软在开发者日上发布了AI开发者平台。微软还提到&#xff0c;旗下产品都可以本地直接处理AI任务。另外Win10系统将会Visual Studio 15.7 预览版上增加了ONNX文档到UWP应用里&#xff0c;…

为什么我们要使用HTTP Strict Transport Security?

HTTP Strict Transport Security (通常简称为HSTS) 是一个安全功能&#xff0c;它告诉浏览器只能通过HTTPS访问当前资源, 禁止HTTP方式。 001. Freebuf百科&#xff1a;什么是Strict-Transport-Security 我摘自owasp上的一段定义&#xff1a; HTTP Strict Transport Securit…

Python爬虫四(正则表达式)

菜鸟教程 之 python 正则表达式&#xff1a;http://www.runoob.com/python/python-reg-expressions.html python 官网正则文档&#xff1a;https://docs.python.org/2/library/re.html 1、正则表达式 简介 正则表达式 是对字符串操作的一种逻辑公式&#xff0c;就是用事先定义好…

量子霸权是个模糊的里程碑

来源&#xff1a;新华网就在人们纷纷猜测谷歌是否会在这场全球科技竞赛中夺魁时&#xff0c;美国斯坦福大学量子物理学家帕特里克海登&#xff18;日对新华社记者提出了一个新颖观点&#xff1a;“量子霸权是个模糊的里程碑。”美国谷歌公司日前发布&#xff17;&#xff12;量…

酸甜八宝粥

用javascript设置和读取cookie的简单例子请看下面用javascript设置和读取cookie的简单例子,现在的问题是,如果要设置的是一个cookie集,比如在cookie1集中有uname,uid两组信息,应该如何写呢? cookie("cookie1")("uname")"testuser"; cookie(&quo…

KMS的几个开源实现汇总

搜索关键词 open source key management server “key management server” ranger kms rotate keys decrypting KMIP 集中密钥工作流程 Centralized Encryption Key Management Server (KMS) | Townsend Security Keywhiz Keywhiz Gitee 极速下载/keywhiz - Gitee.co…

Python 爬虫学习 系列教程

Python爬虫 --- 中高级爬虫学习路线 &#xff1a;https://www.cnblogs.com/Eeyhan/p/14148832.html 看不清图时&#xff0c;可以把图片保存到本地在打开查看。。。 Python爬虫学习系列教程 From&#xff1a;https://cuiqingcai.com/1052.html 一、爬虫入门 1. Python爬虫入门一…

友盟分享小程序_在线学习应用“小打卡”小程序分享

目前疫情导致只能线上开学&#xff0c;多采用微信群或QQ群发布作业、打卡&#xff0c;结合直播平台在线授课。各科老师加入群&#xff0c;打卡及发布的作业、教师辅导信息容易覆盖同时不能记录下来。在以上应用不变的情况下&#xff0c;应用“小打卡”微信小程序可以很好的解决…

LeCun:现在还没有真正的AI系统,机器与生物系统差远了

安妮 编译自 NYU量子位 出品 | 公众号 QbitAI可能我们现在提到的AI都是假AI。近日&#xff0c;Facebook首席人工智能科学家Yann LeCun在纽约大学坦登工程学院的AI研讨会上谈了谈AI的历史和方向。研讨会上&#xff0c;LeCun提出人工神经网络的学习能力仍十分有限&#xff0c;还不…

Java并发编程实战~不安全的单例

不安全的单例 /*** 不安全的单例.<br>* author gqltt<br>* version 1.0.0 2020年4月7日<br>* see * since JDK 1.5.0*/ public class Singleton {// volatile 修饰保证安全.private static Singleton instance null;public static Singleton getInstance()…

于.net开发平台项目案例集锦

订阅 | 上一篇 | 下一篇 五味笔记 于.net开发平台项目案例集锦 作者:henq 日期:2007-09-14字体大小: 小 中 大基于.net开发平台项目案例集锦 经过微软.net Framework 2.0的革新&#xff0c;.net平台的开发越来越精彩。笔者收集基于.net开发的n个项目&#xff0c;一方面为新手提…