来看看这个SQl怎么写,有关分组取前N条的
一个表中,希望按照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