分享

分页存储过程sql2000,支持 多字段 排序

 tong 2007-09-03

------------------------------------------------------------------------------------------------------------------------
-- Date Created: 2007-6-18 10:43:58
-- Created By: www. : liyu
------------------------------------------------------------------------------------------------------------------------
CREATE PROCEDURE [dbo].[proc_GetExp_SubjectBudgetList]
@PageIndex int,
@PageSize int,
@SQLString varchar(1000),
@RecordCount int output
AS
DECLARE @PageLowerBound int
DECLARE @PageUpperBound int
SET TRANSACTION ISOLATION LEVEL READ COMMITTED
SET @PageLowerBound = @PageSize * (@PageIndex-1) + 1
SET @PageUpperBound = @PageSize * @PageIndex
Create Table #TempRecord (IndexID int IDENTITY (1, 1) NOT NULL,ID bigint)

Insert into #TempRecord (ID) exec('select SubjectID FROM Exp_SubjectBudget ' + @SQLString)
select @RecordCount = max(IndexID) from #TempRecord
SELECT
[SubjectID],
[SubjectBudget],
[Year],
[Month],
[Budget],
[DeptName],
[DeptID]
FROM
[dbo].[Exp_SubjectBudget]
inner join #TempRecord on #TempRecord.Id = [SubjectID]
where #TempRecord.IndexID >= @PageLowerBound AND #TempRecord.IndexID <= @PageUpperBound
order by #TempRecord.IndexID

GO

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多