SQL 开窗函数 over的使用

  1. 先新建一个和我一样的数据表,一定要记得动起来噢.

  2. SQL 开窗函数 over的使用
  3. create table 学生表

    (

      学生id int identity(1,1) not null,

      学号 int null,

      期中分数 int null,

      期末分数 int null

      );

    insert into 学生表(学号,期中分数,期末分数)

    values

    (1,60,55),

    (2,75,40),

    (3,null,85),

    (5,86,75),

    (6,90,95),

    (7,59,90);

    这是快速建表及插入SQL语句的代码.

    SQL 开窗函数 over的使用
  4. 我们先来复习一下前面我们分享的聚合函数的使用.

    聚合函数是把多行聚集起来合成一行.

    select AVG(期末分数) from 学生表;

    我们把学生表中所有的期末分数进行了平均数统计.

    SQL 开窗函数 over的使用
  5. 那么如果我们想把学生表全部都显示出来,并且每一行的最后一列都加成全班的平均分怎么样做呢?这个时候,我们就需要使用over() 开窗函数了.

    SQL 开窗函数 over的使用
  6. 如果我们要使用别名的话,记得 as关键在要在over() 开窗函数后面使用.

    SQL 开窗函数 over的使用
  7. 开窗函数over的常用方法

    1.为每条数据显示聚合信息.(聚合函数() over())

    2.位每条数据提供分组的聚合函数结果(聚合函数() over(partition by 字段) as 别名)

    3.与排名函数一起使用(row number() over(orde

  8. r by 字段) as 别名)











我在学习SQL的过程中对于这个开窗函数很是不理解

查找资料后,发现这个描述非常的简单易懂。


资源来自:百度经验 

https://jingyan.baidu.com/article/f00622283e7ac4fbd3f0c83d.html