来看看这个SQl怎么写,有关分组取前N条的

carolbaby carolbaby 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
一个表中,希望按照groupid分组后,再在组中按照score排序,取出每组的前50%的记录(不一定是50%,可能会是任何一个比例。)

create table testTable
(
groupid int,
score int,
title varchar(64)
)


insert into testtable values(1,80, 'title1')
insert into testtable values(1,90, 'title2')
insert into testtable values(1,67, 'title3')
insert into testtable values(1,93, 'title4')
insert into testtable values(1,84, 'title5')
insert into testtable values(2,80, 'title6')
insert into testtable values(2,40, 'title7')
insert into testtable values(2,60, 'title8')
insert into testtable values(2,50, 'title9')
insert into testtable values(2,59, 'title10')
insert into testtable values(2,45, 'title11')
insert into testtable values(2,65, 'title12')

希望得到:
1 90 title2
1 93 title4
1 84 title5
2 80 title6
2 60 title8
2 59 title10
2 65 title12
...全文

相关推荐

评论 10
收藏 已收藏
分享
返回顶部
carolbaby
MS-SQL Server 34,876 成员 254,635 内容