现在的位置: 首页 > 综合 > 正文

一个分页SQL 存储.

2012年09月01日 ⁄ 综合 ⁄ 共 567字 ⁄ 字号 评论关闭

use FinanceSystem
go

ALTER PROCEDURE dbo.Up_Hunter_GetPersonalFinance
 @PageSize int,
 @Page int,
 @SortColumn CHAR(50),
    @SortDirection  CHAR(4)
AS
SET NOCOUNT ON

DECLARE @GetRowCount int
SET @GetRowCount = @PageSize
SET @Page = @Page * @GetRowCount
DECLARE @SQL CHAR(4000)
SET @SQL = N'
SELECT TOP ' + CONVERT(CHAR, @GetRowCount) + N'
a.Amount,
a.BigClass,
a.SmallClass,
a.Memo,
a.UserDate,
a.TransactionID
FROM (
  SELECT TOP ' + CONVERT(CHAR, @Page) + N'
  Amount,
  BigClass,
  SmallClass,
  Memo,
  UserDate,
  TransactionID
   FROM dbo.PersonalFinance (NOLOCK)
      ORDER BY ' + @SortColumn + N' ' +  @SortDirection + N'
     ) a'

EXEC (@SQL)      

抱歉!评论已关闭.