sql2005 存儲過程分頁代碼
更新時間:2010年06月29日 15:24:18 作者:
sql2005 存儲過程分頁代碼,發(fā)的也比較多了,這里腳本之家兼得整理下,大家可以多參考幾個。選擇自己喜歡的。
復(fù)制代碼 代碼如下:
create database Test
on primary ( name='Test_Data.mdf',
filename='D:\我的資料\sql\備份\Test_Data.mdf'
)
log on
(
name='Test_Data.ldf',
filename='D:\我的資料\sql\備份\Test_Data.ldf'
)
if object_id('tb') is not null drop table tb
create table tb
(
Col int
)
insert into tb select top 50 number from master..spt_values where type='P' and number>0
create proc SplitPage
(
@TableName nvarchar(50),
@PageSize int,--每頁顯示的數(shù)量
@CurrentPage int,--當前第幾頁
@PageCol nvarchar(50),--排序字段
@OrderNo nvarchar(50)--排序方式(DESC,ASC)
)
as
/*
測試用的
declare @PageCol nvarchar(50)
declare @TableName nvarchar(50)
declare @OrderNo nvarchar(50)
declare @PageSize int
declare @CurrentPage int
set @PageCol='Col'
set @TableName='tb'
set @OrderNo='DESC'
set @PageSize=10
set @CurrentPage=4
*/
declare @sql nvarchar(1000)
set @sql=''
set @sql='
;with hgo as
(
select *,row_number() over(
order by '+@PageCol+' '+@OrderNo+') rank
from '+@TableName+'
)'
set @sql=@sql+'select Col from hgo where rank between '+ltrim((@CurrentPage-1)*@PageSize+1)+' and '+ltrim(@CurrentPage*@PageSize)
--print @sql
exec (@sql)
exec SplitPage 'tb',10,1,'Col','DESC'
Col
-----------
50
49
48
47
46
45
44
43
42
41
(10 行受影響)
exec SplitPage 'tb',10,3,'Col','DESC'
Col
-----------
30
29
28
27
26
25
24
23
22
21
(10 行受影響)
相關(guān)文章
SqlServer 2005 T-SQL Query 學習筆記(1)
SqlServer 2005 T-SQL Query 學習筆記(1)2010-02-02SQL?Server中帶有OUTPUT子句的INSERT,DELETE,UPDATE應(yīng)用
這篇文章介紹了SQL?Server中帶有OUTPUT子句的INSERT,DELETE,UPDATE應(yīng)用,文中通過示例代碼介紹的非常詳細。對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2022-06-06Win2008中安裝的MSSQL2005后無法訪問的解決方法
最近筆者一直在使用Win2008系統(tǒng),不過發(fā)現(xiàn)一個很奇怪的問題,那就是在該系統(tǒng)上安裝了SQL2005后,再在其他計算機訪問該主機顯示不能訪問2014-07-07SQL Server 2005 Management Studio Express企業(yè)管理器將英文變成簡體中文版的實現(xiàn)方
這篇文章主要介紹了SQL Server 2005 Management Studio Express企業(yè)管理器將英文變成簡體中文版的實現(xiàn)方法,需要的朋友可以參考下2015-09-09SQL Server 使用 SET FMTONLY ON 獲得表的元數(shù)據(jù)
本文介紹SQL Server2005以及之后的版本,通過 SET FMTONLY ON 獲得表的元數(shù)據(jù)的方法,小伙伴們可以參考一下。2016-05-05sql里將重復(fù)行數(shù)據(jù)合并為一行數(shù)據(jù)使用逗號進行分隔
sql里將重復(fù)行數(shù)據(jù)合并為一行,將多行fieldname字段的內(nèi)容串聯(lián)起來,用逗號分隔,接下來為大家介紹下詳細的實現(xiàn)sql語句,希望對你有所幫助2013-04-04win2003 Server配置SQL Server 2005遠程連接的方法
這篇文章主要介紹了win2003 Server配置SQL Server 2005遠程連接的方法,需要的朋友可以參考下2015-01-01