不完美的分页存储过程

--这是一个通用的分页存储过程
if object_id ('bin','p') is not null
drop proc bin
go
create proc bin
@cupage int=1,
@count int=10,
@TABLENAME VARCHAR(20),
@COLUMNA VARCHAR(20)
as
DECLARE @SQL NVARCHAR(1000)
SET @SQL = N'SELECT TOP '+CAST(@COUNT AS NVARCHAR(3))
SET @SQL = @SQL + N' * FROM '+@TABLENAME +' WHERE '+@COLuMNA + ' NOT IN( '
SET @SQL = @SQL + N' SELECT TOP '+CAST(((@CUPAGE-1)*@COUNT) AS NVARCHAR(3))
SET @SQL = @SQL + @COLUMNA +N' FROM ' +@TABLENAME+' )'

EXEC (@SQL)
 GO
exec bin 1,3,'wu','uid'


select top 3 * from wu
select top 3 * from wu where uid not in(select top 1  uid from wu)

posted on 2010-06-03 23:38  记住昨天,迎接明天  阅读(171)  评论(0编辑  收藏  举报