场景
嵌套查询,将一张表的查询结果作为另一条语句的查询对象。
select *,dense_rank() over(order by 地区总分 desc) 地区排名 from (
select *,ROW_NUMBER() over(partition by 地址 order by 数学成绩 desc) 区内排名,
SUM(数学成绩) over(partition by 地址) 地区总分 from students)
报错
原因
SQL server 中嵌套查询需要给子查询得到的结果集命名
纠正
select *,dense_rank() over(order by 地区总分 desc) 地区排名 from (
select *,ROW_NUMBER() over(partition by 地址 order by 数学成绩 desc) 区内排名,
SUM(数学成绩) over(partition by 地址) 地区总分 from students) t1
新手上路,有不足之处还望各位大佬指出