--少了一次嵌套:
select
*
from
(SELECT
ROW_NUMBER() OVER (ORDER BY UserNum DESC) AS Row,
* FROM
(
SELECT
u.UserId, u.UserName,
(Count(UserId) FROM UserGroup as g WHERE g.GroupId=u.GroupId) as UserNum
FROM
User as u
)T
)tmp
WHERE Row<? AND Row>?
select
*
from
(SELECT
ROW_NUMBER() OVER (ORDER BY UserNum DESC) AS Row,
* FROM
(
SELECT
u.UserId, u.UserName,
(Count(UserId) FROM UserGroup as g WHERE g.GroupId=u.GroupId) as UserNum
FROM
User as u
)T
)tmp
WHERE Row<? AND Row>?
解决方案 »
- 设置默认数据库
- VB.NET+SQLSVR做了一个图书管理系统,调试时出现了这样的错误:无法打开登录test中请求的数据库。登录失败 请各位帮忙找出原因啊,急~~~~
- 请问如何在各个字段中查找符合条件的记录?
- 如何给用户分配语句权限?
- 异类查询要求为连接设置 ANSI_NULLS 和 ANSI_WARNINGS 选项。
- 救急:请问最多同时有200用户连接只是查询,大概2张表,每张500万条记录的sqlserver2000数据库服务器用什么配置
- 如何在库表中将一个数字类型(或者其他非字符类型)字段的数据改为null?
- 为什么不能创建FOREIGN KEY约束?
- 建立链接服务器时报错
- 请教sql语句
- 启动安装程序然后无反映,安装不了sql server 2000
- 复杂查询sql + 分页..在线等结贴..
WITH Groups_CTE(Row, GroupId, [Name], Intro, UserNum)
AS
(
SELECT
ROW_NUMBER() OVER (ORDER BY UserNum DESC) AS Row,
* FROM
(
SELECT
g.GroupId, g.Name,g.Intro,
(select count(UserId) from UserGroup AS ug where g.GroupId = ug.GroupId) as UserNum
FROM Group as g
)T
)
SELECT GroupId, [Name], Intro, UserNum
FROM
Groups_CTE
WHERE Row BETWEEN @StartIndex AND @StartIndex+@PageSize-1