查出单表中 每组的前5个 排序方式是优先级

xxyes 2012-09-19 11:51:22
rt~

太久没用sql了,啥都忘了。。
...全文
182 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
xxyes 2012-09-19
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 的回复:]
引用 4 楼 的回复:
引用 3 楼 的回复:
SQL code

select * from test a
where a.id in (select top 5 id from test b where a.组号=b.组号)

--try,没测试数据,只能写个大概



消息 4104,级别 16,状态 1,第 1 行
无法绑定由多个部分组成的标识符 "question……
[/Quote]



select * from question a
where a.id in (select top 5 id from question b where a.typeid=b.typeid order by b.sort desc) order by a.sort desc


好了
發糞塗牆 2012-09-19
  • 打赏
  • 举报
回复
你的那个【组】指的是一行还是n行?我看他们的回复好像都认为是一组就是一行了呢。另外,是什么版本的SQLServer,有些技术2000不支持。
xxyes 2012-09-19
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 的回复:]
给点数据可以不?太虚了
[/Quote]

表结构很简单啊,就一表 一个表明优先级的sort,一个主键id,一个分组用的typeid

难点是,每组取前5个
Felixzhaowenzhong 2012-09-19
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 的回复:]
引用 3 楼 的回复:
SQL code

select * from test a
where a.id in (select top 5 id from test b where a.组号=b.组号)

--try,没测试数据,只能写个大概



消息 4104,级别 16,状态 1,第 1 行
无法绑定由多个部分组成的标识符 "question.typeid"。
消息……
[/Quote]

select * from question a
where a.id in (select top 5 id from question b where b.typeid=a.typeid)
xxyes 2012-09-19
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 的回复:]
SQL code

select * from test a
where a.id in (select top 5 id from test b where a.组号=b.组号)

--try,没测试数据,只能写个大概
[/Quote]


消息 4104,级别 16,状态 1,第 1 行
无法绑定由多个部分组成的标识符 "question.typeid"。
消息 4104,级别 16,状态 1,第 1 行
无法绑定由多个部分组成的标识符 "question.typeid"。

select * from question a
where a.id in (select top 5 id from question b where question.typeid=question.typeid)
  • 打赏
  • 举报
回复

select * from test a
where a.id in (select top 5 id from test b where a.组号=b.组号)

--try,没测试数据,只能写个大概
  • 打赏
  • 举报
回复
select * from test a
where a.id in (select top 5 id from test b where a.组号=b.组号)
發糞塗牆 2012-09-19
  • 打赏
  • 举报
回复
给点数据可以不?太虚了

34,590

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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