partition by 语法

2018-03-31  本文已影响0人  夜藍

查询成绩表每科前3名:

select  *  from(

        select 学生ID,科目,score,ROW_NUMBER() over (partition by 科目 order by score) newcolumn from dbo.成绩表

) t where newcolumn<=3

查询学生表每个姓氏多少人并倒序

select left(stuname,1) 姓氏,COUNT(newcolumn) 人数 from(

        select *,ROW_NUMBER() over (partition by left(stuname,1) order by stuname) newcolumn from Student

) t group by left(stuname,1) order by COUNT(newcolumn) desc

上一篇 下一篇

猜你喜欢

热点阅读