使用 TOP 語法來達到
USE [AdventureWorks2016] GO CREATE PROCEDURE uspPagingByTop (@PageIndex int , @PageRow int ) AS BEGIN DECLARE @Query nvarchar(800) SET @Query= ' SELECT TOP ' + CONVERT(NVARCHAR(3),@PageRow)+' * FROM Sales.SalesOrderHeader WHERE SalesOrderID NOT IN ( SELECT TOP ' + CONVERT(NVARCHAR(3), @PageRow * (@PageIndex-1) ) + ' SalesOrderID FROM Sales.SalesOrderHeader ORDER BY SalesOrderID ) ORDER BY SalesOrderID' EXEC (@Query) END執行 Store Procedure 要取出 第 2 頁,每頁 10 筆資料的分頁資料
EXEC uspPagingByTop 2 , 10左結果為分頁結果、右結果為直接 Select 全部資料,搭配 SSMS 的資料編號來閱讀
沒有留言:
張貼留言