博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
【SQL 代码】Sql分页(自用)
阅读量:6331 次
发布时间:2019-06-22

本文共 1477 字,大约阅读时间需要 4 分钟。

效果图:

 

下面是存储过程的创建,用的时候调用就行了

/****** Object:  StoredProcedure [dbo].[spSqlPageByRownumber]    Script Date: 2015/3/5 17:34:38 ******/SET ANSI_NULLS ONGOSET QUOTED_IDENTIFIER ONGOCREATE proc [dbo].[spSqlPageByRownumber]@tbName varchar(255),        --表名@tbFields varchar(1000),      --返回字段@PageSize int,                --页尺寸@PageIndex int,                --页码@strWhere varchar(1000),    --查询条件@StrOrder varchar(255)  --排序条件asdeclare @strSql varchar(5000)    --主语句declare @strSqlCount nvarchar(500)----------------总记录数---------------if @strWhere !=''beginset @strSqlCount='Select count(*) as TotalCout from  ' + @tbName + ' where '+ @strWhereendelsebeginset @strSqlCount='Select count(*) as TotalCout from  ' + @tbNameend--------------分页------------if @PageIndex <= 0begin  set @PageIndex = 1endif @strWhere !=''beginset @strSql='Select * from (Select  row_number() over('+@strOrder+') rowId,'+ @tbFields+' from ' + @tbName + ' where  ' + @strWhere+' ) tb where tb.rowId >'+str((@PageIndex-1)*@PageSize)+' and tb.rowId <= ' +str(@PageIndex*@PageSize)endelsebeginset @strSql='Select * from (Select  row_number() over('+@strOrder+') rowId,'+ @tbFields+' from ' + @tbName + ' ) tb where tb.rowId >'+str((@PageIndex-1)*@PageSize)+' and tb.rowId <= ' +str(@PageIndex*@PageSize)endexec(@strSqlCount)exec(@strSql)GO

 执行:

exec [dbo].spSqlPageByRownumber 'GoodsCategory','*',10,2,'Cid > 0','order by Cid desc'
本文转自叶超Luka博客园博客,原文链接:http://www.cnblogs.com/yc-755909659/p/4001712.html,如需转载请自行联系原作者
你可能感兴趣的文章
简单的邮件发送
查看>>
mysql性能优化分析 --- 上篇
查看>>
<TCP/IP>ICMP报文的分类
查看>>
Jvm垃圾回收器(终结篇)
查看>>
ajax发起和收到服务器的信息
查看>>
SPOJ TTM
查看>>
HDU-2159 FATE (DP)
查看>>
1390 游戏得分(贪心)
查看>>
hdu2830(2009多校第二场) 可交换列最大矩形面积
查看>>
win7中chm无法显示
查看>>
工作杂记
查看>>
Socket的错误码和描述(中英文翻译)
查看>>
算法的乐趣 (王晓华 著)
查看>>
Windows和Linux系统下,虚拟环境安装的全面说明和详细步骤
查看>>
vue 引入bootstarp --webpack
查看>>
codeforce div 377
查看>>
表单验证
查看>>
博客突破10万写点东西
查看>>
# 2017-2018-1 20155224 《信息安全系统设计基础》第九周学习总结
查看>>
网址收藏1
查看>>