select * from (
select top 100 *, ROW_NUMBER() over(PARTITION BY uid order by star5 desc, star4 desc, star3 desc, star2 desc, star1 desc) as tbrow from tb_ushow
) as t where tbrow<=1 order by star5 desc, star4 desc, star3 desc, star2 desc, star1 desc
注:ROW_NUMBER() OVER() 是mssql2005后开始有的
MSSQL2005 TOP取数技巧

本文介绍了一种使用MSSQL2005中的ROW_NUMBER()函数结合PARTITION BY进行数据排序和筛选的方法。通过具体SQL语句示例,展示了如何高效地选取指定用户ID下的前100条记录,并按星级评价逆序排列。
1万+

被折叠的 条评论
为什么被折叠?



