DECLARE @pagenum AS INT,
@pagesize AS INT,
@SQL AS NVARCHAR(MAX),
@orderby AS NVARCHAR(100)
SET @pagenum = 2
SET @pagesize = 3
select
(SELECT ROW_NUMBER() OVER(ORDER BY c.UserID DESC) AS rownum),
c.groupid,c.userid,c.title,u.firstname,u.lastname from contacts as c
inner join users u
on u.userid=u.userid
where rownum BETWEEN (@pagenum-1)*@pagesize+1 AND @pagenum*@pagesize这段SQL是报错的,Invalid column name 'rownum'.
请问,如果在动态生成的列上加查询条件呢? 请高手指教。马上结帖。
@pagesize AS INT,
@SQL AS NVARCHAR(MAX),
@orderby AS NVARCHAR(100)
SET @pagenum = 2
SET @pagesize = 3
select
(SELECT ROW_NUMBER() OVER(ORDER BY c.UserID DESC) AS rownum),
c.groupid,c.userid,c.title,u.firstname,u.lastname from contacts as c
inner join users u
on u.userid=u.userid
where rownum BETWEEN (@pagenum-1)*@pagesize+1 AND @pagenum*@pagesize这段SQL是报错的,Invalid column name 'rownum'.
请问,如果在动态生成的列上加查询条件呢? 请高手指教。马上结帖。
(SELECT ROW_NUMBER() OVER(ORDER BY c.UserID DESC) AS rownum) as rownum,
c.groupid,c.userid,c.title,u.firstname,u.lastname from contacts as c
inner join users u
on u.userid=u.userid
where rownum BETWEEN (@pagenum-1)*@pagesize+1 AND @pagenum*@pagesize
select *
from (
select
(SELECT ROW_NUMBER() OVER(ORDER BY c.UserID DESC)) AS rownum,
c.groupid,c.userid,c.title,u.firstname,u.lastname from contacts as c
inner join users u
on u.userid=u.userid
) _x
where _x.rownum BETWEEN (@pagenum-1)*@pagesize+1 AND @pagenum*@pagesize
@pagesize AS INT,
@SQL AS NVARCHAR(MAX),
@orderby AS NVARCHAR(100)SET @pagenum = 2
SET @pagesize = 3select
rownum=(SELECT ROW_NUMBER() OVER(ORDER BY c.UserID DESC)),
c.groupid,c.userid,c.title,u.firstname,u.lastname
from contacts as c
inner join users u on c.userid=u.userid
where rownum BETWEEN (@pagenum-1)*@pagesize+1 AND @pagenum*@pagesize
DECLARE @pagenum AS INT,
@pagesize AS INT,
@SQL AS NVARCHAR(MAX),
@orderby AS NVARCHAR(100)SET @pagenum = 2
SET @pagesize = 3select * from (select
rownum=(SELECT ROW_NUMBER() OVER(ORDER BY c.UserID DESC)),
c.groupid,c.userid,c.title,u.firstname,u.lastname
from contacts a
inner join users u on a.userid=u.userid)b
where b.rownum BETWEEN (@pagenum-1)*@pagesize+1 AND @pagenum*@pagesize