|
Execute the following
script in Query Editor return the third page of the check register:
use AdventureWorks
go
set nocount on
go
-- drop table PayRegister
create table PayRegister (
PayRegisterID int identity PRIMARY KEY,
EmployeeID int,
Pay money,
PaycheckDate smalldatetime
)
go
insert PayRegister(EmployeeID, Pay, PaycheckDate) values (525, 1157.23,'1/1/2007')
insert PayRegister(EmployeeID, Pay, PaycheckDate) values (125, 13257.23,'1/1/2007')
insert PayRegister(EmployeeID, Pay, PaycheckDate) values (225, 14257.23,'1/1/2007')
insert PayRegister(EmployeeID, Pay, PaycheckDate) values (325, 15257.23,'1/1/2007')
insert PayRegister(EmployeeID, Pay, PaycheckDate) values (425, 17257.23,'1/1/2007')
insert PayRegister(EmployeeID, Pay, PaycheckDate) values (555, 1257.13,'1/2/2007')
insert PayRegister(EmployeeID, Pay, PaycheckDate) values (545, 7357.18,'1/9/2007')
insert PayRegister(EmployeeID, Pay, PaycheckDate) values (855, 7357.18,'1/10/2007')
insert PayRegister(EmployeeID, Pay, PaycheckDate) values (555, 9257.30,'1/21/2007')
insert PayRegister(EmployeeID, Pay, PaycheckDate) values (551, 6257.30,'1/21/2007')
insert PayRegister(EmployeeID, Pay, PaycheckDate) values (595, 1257.15,'1/25/2007')
insert PayRegister(EmployeeID, Pay, PaycheckDate) values (255, 1057.99,'2/4/2007')
insert PayRegister(EmployeeID, Pay, PaycheckDate) values (553, 3457.23,'2/7/2007')
insert PayRegister(EmployeeID, Pay, PaycheckDate) values (585, 3457.87,'2/12/2007')
insert PayRegister(EmployeeID, Pay, PaycheckDate) values (555, 5857.34,'2/15/2007')
insert PayRegister(EmployeeID, Pay, PaycheckDate) values (955, 13457.23,'2/25/2007')
insert PayRegister(EmployeeID, Pay, PaycheckDate) values (155, 9857.26,'3/1/2007')
insert PayRegister(EmployeeID, Pay, PaycheckDate) values (255, 4557.32,'3/15/2007')
insert PayRegister(EmployeeID, Pay, PaycheckDate) values (355, 4757.30,'3/16/2007')
insert PayRegister(EmployeeID, Pay, PaycheckDate) values (455, 3557.25,'3/16/2007')
insert PayRegister(EmployeeID, Pay, PaycheckDate) values (655, 15757.23,'3/16/2007')
insert PayRegister(EmployeeID, Pay, PaycheckDate) values (575, 2457.56,'3/31/2007')
insert PayRegister(EmployeeID, Pay, PaycheckDate) values (585, 3457.23,'4/4/2007')
insert PayRegister(EmployeeID, Pay, PaycheckDate) values (595, 2357.99,'4/5/2007')
insert PayRegister(EmployeeID, Pay, PaycheckDate) values (350, 5657.35,'4/8/2007')
insert PayRegister(EmployeeID, Pay, PaycheckDate) values (455, 14757.53,'6/5/2007')
insert PayRegister(EmployeeID, Pay, PaycheckDate) values (575, 3057.56,'7/7/2007')
insert PayRegister(EmployeeID, Pay, PaycheckDate) values (535, 6557.34,'7/8/2007')
insert PayRegister(EmployeeID, Pay, PaycheckDate) values (255, 4457.55,'8/5/2007')
insert PayRegister(EmployeeID, Pay, PaycheckDate) values (585, 18457.25,'8/5/2007')
insert PayRegister(EmployeeID, Pay, PaycheckDate) values (595, 2357.56,'8/22/2007')
insert PayRegister(EmployeeID, Pay, PaycheckDate) values (255, 4557.77,'9/15/2007')
insert PayRegister(EmployeeID, Pay, PaycheckDate) values (545, 6557.95,'9/26/2007')
insert PayRegister(EmployeeID, Pay, PaycheckDate) values (525, 16557.95,'9/26/2007')
insert PayRegister(EmployeeID, Pay, PaycheckDate) values (544, 26557.95,'9/26/2007')
declare @PageSize int, @PageNo int
set @PageSize = 5
set @PageNo = 3
SELECT *
FROM (SELECT *, ROW_NUMBER()
OVER (ORDER BY PayRegisterID) AS RowNumber
FROM PayRegister) AS a
WHERE RowNumber BETWEEN (@PageNo - 1) * @PageSize + 1
AND (@PageNo * @PageSize)
set nocount off
|