翻页的存储过程

2008-04-02 10:40:21来源:互联网 阅读 ()

新老客户大回馈,云服务器低至5折

CREATE PROC Turnpage
@qCols varchar(200), --需要查询的列
@qTables varchar(200), --需要查询的表 和条件
@iKey varchar (20), --标识字段
@oKey varchar(20), --排序字段
@pageSize int, --每页的行数
@pageNumber int --要显示的页码, 从0开始
AS
set nocount on
BEGIN
DECLARE @sqlText AS varchar(1000)
DECLARE @sqlTable AS varchar(1000)
SET @sqlTable = 'SELECT TOP ' CAST((@pageNumber 1) * @pageSize AS varchar(30)) ' ' @qCols ' from ' @qTables ' order by ' @oKey ' desc'
SET @sqlText =
'SELECT TOP ' CAST(@pageSize AS varchar(30)) ' * '
'FROM (' @sqlTable ') AS tableA '
'WHERE ' @iKey ' NOT IN(SELECT TOP '
CAST(@pageNumber * @pageSize AS varchar(30)) ' ' @iKey
' FROM (' @sqlTable ') AS tableB)'
EXEC (@sqlText)
--print(@sqltext)
END
GO


标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇: Oracle

下一篇: 在SQLSERVER里写了一个Split函数