急求,在线等一个sql查询语句,高手快来!

wonder927 2006-03-08 01:43:56
两个表
表1 ques
quesid userid
1 1
2 3
3 4
4 3
5 4
6 3
7 2
8 1

表2 user
userid
1
2
3
4
请问如何吧userid 按在ques表中的个数由到少排序?
需要的结果应该是 userid 3,1,4,2
急,在线等,谢谢高手快来!
...全文
52 3 点赞 打赏 收藏 举报
写回复
3 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
-狙击手- 2006-03-08
declare @t table(quesid int,userid int)
insert @t
select 1,1 union all
select 2,3 union all
select 3,4 union all
select 4,3 union all
select 5,4 union all
select 6,3 union all
select 7,2 union all
select 8,1


select userid
from @t
group by userid
order by sum(quesid) desc



/8


userid
-----------
3
1
4
2
*/
  • 打赏
  • 举报
回复
wonder927 2006-03-08
是第二种,谢谢!
  • 打赏
  • 举报
回复
lsqkeke 2006-03-08
不知道你是哪种:


select a.userid from [user] a,(select userid,amount=count(1) from ques group by userid)b
where a.userid=b.userid
order by amount desc


select userid,amount=count(1) from ques group by userid order by amount desc
  • 打赏
  • 举报
回复
相关推荐
发帖
疑难问题
创建于2007-09-28

2.1w+

社区成员

MS-SQL Server 疑难问题
申请成为版主
帖子事件
创建了帖子
2006-03-08 01:43
社区公告
暂无公告