急求,在线等一个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
急,在线等,谢谢高手快来!
...全文
82 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
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

22,209

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧