Mysql窗口函数快速入门

MySQL从8.0版本开始支持窗口函数。窗口函数的作用类似于在查询中对数据进行分组,不同的是,Group By分组操作会把分组的结果聚合成一条记录,而窗口函数是将分组的结果置于每一条数据记录中

语法结构

window_function_name (expression)
	over(
	[partition_definition]
	[order_definition]
	[frame_definition])

window_function_name:函数名 (专用窗口函数、也可以使用聚合函数

over:关键字

partition by: 窗口按照指定字段进行分组,窗口功能在分组内执行,并且在跨越分区边界时重新初始化; order by :按照指定字段进行排序,窗口函数将按照排序后的记录顺序进行编号,可以和partition 语句结合使用,也可以单独使用;

frame:frame是当前分区的一个子集,在分区中再进一步的细分窗口,通常用来作为滑动窗口使用,某些窗口函数属于静态窗口,frame子句没有作用

Mysql窗口函数快速入门
窗口函数的写法

专用窗口函数

Mysql窗口函数快速入门
专用窗口函数
Mysql窗口函数快速入门
Mysql窗口函数快速入门

原创文章,作者:三酷猫,如若转载,请注明出处:https://www.sankumao.com/1561.html

(0)
上一篇 2022年8月10日 下午11:51
下一篇 2022年8月11日 下午10:30

相关推荐

  • Redis学习教程九:哨兵模式

    在我们上一节:主从复制(读写分离)中,我们可以看到,只有一个Master主机负责写,有多个slave主机负责读。那么如果Master挂了,如何保证可用性,实现继续读写? 什么是哨兵…

    2022年9月13日
  • Redis学习小故事:mysql数据库和redis缓存数据一致性

    一天,老板说「最近公司的用户越来越多了,但是服务器的访问速度越来越差的,阿旺帮我优化下,做好了给你画个饼!」。 程序员阿旺听到老板口中的「画饼」后就非常期待,没有任何犹豫就接下了老…

    2022年9月11日
  • mysql在Linux上的安装教程,超详细!

    方式一、无密码登录 如果你系统有安装,那可以选择进行卸载: Yum 资源包下载地址:https://dev.mysql.com/downloads/repo/yum/ 权限设置: …

    2022年8月4日
  • Redis学习教程三:数据类型

    Redis支持五种基本数据类型:string(字符串),hash(哈希),list(列表),set(集合)及zset(sorted set:有序集合)。三大特殊数据类型:geo(地…

    2022年9月9日
  • Redis学习教程五:发布订阅

    Redis 发布订阅 (pub/sub) 是一种消息通信模式:发送者 (pub) 发送消息,订阅者 (sub) 接收消息。 Redis 客户端可以订阅任意数量的频道。 下图展示了频…

    2022年9月12日
  • mysql查询获得两个时间的时间差方式

    其中starttime为时间小的那个时间,endtime为时间大的时间。 unit单位取值: FRAC_SECOND   表示间隔是毫秒 SECOND   秒 MINUTE   分…

    2022年10月8日
  • Redis学习教程二:常用命令

    redis默认有16个数据库(配置文件中内容),默认使用的是第0个 redis是单线程的redis是基于内存操作,CPU不是redis性能瓶颈,redis的瓶颈是根据机器的内存和网…

    2022年9月9日
  • Redis学习教程七:持久化

    概述 redis是内存数据库,如果不将内存中的数据库状态保存到磁盘,那么一旦服务器进程退出,服务器中的数据库状态也会消失。所以redis提供了持久化功能,且分为RDB、AOF两种方…

    2022年9月12日
  • Mysql 视图

    一、什么是视图 视图是从一个或多个表中导出来的表,是一种虚拟存在的表。视图就像一个窗口,通过这个窗口可以看到系统专门提供的数据,这样用户可以不看整个数据库表中的数据,而只关心对自己…

    2022年8月8日
  • Redis学习教程四:配置文件详解

    redis的配置文件有三个,基础内容都是一样的。只是配置的不同而已。下面我们来看看都有哪些配置吧! 1.内存 当需要内存大小时,可以指定 2.引入配置文件 在这里包含一个或多个其他…

    2022年9月9日