T-SQL开窗函数

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了T-SQL开窗函数相关的知识,希望对你有一定的参考价值。

开窗函数over()

 用途一:排序order by ,row_number

  select *,RANK() over(order by english desc) from Score --根据英语成绩的排序顺序,显示Score表的全部数据,并附加一列排序序号列(可以有重复号

  select *,row_number() over(order by price desc)  --根据价格的排序顺序,显示需求表的全部数据,并附加一列行号列(没有重复号)。
  from Orders


 用途二:划区partition by,结合聚合函数针对某部分数据进行汇总

  --传统的统计汇总,这个语句表示对整个数据进行划区(即SUM()统计的是整个表的总和)
  select name,SUM(count)
  from Orders
  group by name

  --采用partition by进行划区,SUM()统计的是划区后的数据总和

  select *,SUM(ocount) over(partition by oname)
  from TblOrders

  

以上是关于T-SQL开窗函数的主要内容,如果未能解决你的问题,请参考以下文章

开窗函数

开窗函数

开窗函数_3

开窗函数_3

over(partition by)开窗函数的使用

开窗函数over()