首页 > 电脑专区 > windows >

sql语句开窗函数over的使用

来源:互联网 2023-02-22 11:27:17 69

我们这次分享什么是开窗函数,在前面我们也学习了如何使用聚合函数.m8u办公区 - 实用经验教程分享!

如果你不懂什么是聚合函数可以查看一些我发布的其他经验.m8u办公区 - 实用经验教程分享!

聚合函数是把很多行合并为一行.m8u办公区 - 实用经验教程分享!

而开窗函数是把一行分为多行.m8u办公区 - 实用经验教程分享!

工具/原料

sqlserversqliteaccessoraclemysql

方法/步骤

1

我的电脑是Windows7 64位,所以我安装的是Sql server2008 r2(64位).m8u办公区 - 实用经验教程分享!

大伙安装的时候也一定要记得看一下自己的操作系统是多少位.你是32位操作系统的就安装32位的Sqlserver 版本不限制. 2005 2012都可以.m8u办公区 - 实用经验教程分享!

当然,我们的Sql语句在很多数据库中都是通用的,比如像Mysql数据库 Access数据库. Oracle数据库. Sqlite数据库 .甚至在我们的Excel中也可以使用Sql语句.m8u办公区 - 实用经验教程分享!

2

废话不多说,在我的Sqlserver中新建一个表和一些数据,方便我们学习后面的over开窗函数. 如果你是其他数据库也是这个道理,也是类似的操作方法.我用的是微软Sqlserver数据库.m8u办公区 - 实用经验教程分享!

3

先新建一个和我一样的数据表,一定要记得动起来噢.m8u办公区 - 实用经验教程分享!

sql语句开窗函数over的使用m8u办公区 - 实用经验教程分享!

4

create table 学生表m8u办公区 - 实用经验教程分享!

(m8u办公区 - 实用经验教程分享!

学生id int identity(1,1) not null,m8u办公区 - 实用经验教程分享!

学号 int null,m8u办公区 - 实用经验教程分享!

期中分数 int null,m8u办公区 - 实用经验教程分享!

期末分数 int nullm8u办公区 - 实用经验教程分享!

);m8u办公区 - 实用经验教程分享!

insert into 学生表(学号,期中分数,期末分数)m8u办公区 - 实用经验教程分享!

valuesm8u办公区 - 实用经验教程分享!

(1,60,55),m8u办公区 - 实用经验教程分享!

(2,75,40),m8u办公区 - 实用经验教程分享!

(3,null,85),m8u办公区 - 实用经验教程分享!

(5,86,75),m8u办公区 - 实用经验教程分享!

(6,90,95),m8u办公区 - 实用经验教程分享!

(7,59,90);m8u办公区 - 实用经验教程分享!

m8u办公区 - 实用经验教程分享!

这是快速建表及插入SQL语句的代码.m8u办公区 - 实用经验教程分享!

sql语句开窗函数over的使用m8u办公区 - 实用经验教程分享!

5

我们先来复习一下前面我们分享的聚合函数的使用.m8u办公区 - 实用经验教程分享!

聚合函数是把多行聚集起来合成一行.m8u办公区 - 实用经验教程分享!

select AVG(期末分数) from 学生表;m8u办公区 - 实用经验教程分享!

我们把学生表中所有的期末分数进行了平均数统计.m8u办公区 - 实用经验教程分享!

sql语句开窗函数over的使用m8u办公区 - 实用经验教程分享!

6

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

sql语句开窗函数over的使用m8u办公区 - 实用经验教程分享!

7

如果我们要使用别名的话,记得 as关键在要在over() 开窗函数后面使用.m8u办公区 - 实用经验教程分享!

sql语句开窗函数over的使用m8u办公区 - 实用经验教程分享!

8

开窗函数over的常用方法m8u办公区 - 实用经验教程分享!

1.为每条数据显示聚合信息.(聚合函数() over())m8u办公区 - 实用经验教程分享!

2.位每条数据提供分组的聚合函数结果(聚合函数() over(partition by 字段) as 别名)m8u办公区 - 实用经验教程分享!

3.与排名函数一起使用(row number() over(order by 字段) as 别名)m8u办公区 - 实用经验教程分享!

以上方法由办公区教程网编辑摘抄自百度经验可供大家参考!m8u办公区 - 实用经验教程分享!


标签: 函数使用语句

办公区 Copyright © 2016-2023 www.bgqu.net. Some Rights Reserved. 备案号:湘ICP备2020019561号统计代码