专业游戏门户,分享手游网游单机游戏百科知识攻略!

嗨游网
嗨游网

MySQL中LAG()函数和LEAD()函数如何使用

来源:小嗨整编  作者:小嗨  发布时间:2024-03-20 08:29
摘要:一、窗口函数的基本用法从mysql8之后才开始支持窗口函数OVER([PARTITIONBY]ORDERBY)登录后复制二、LAG()和LEAD()函数介绍lag和lead分别是向前...
一、窗口函数的基本用法

从mysql8之后才开始支持窗口函数

MySQL中LAG()函数和LEAD()函数如何使用

<窗口函数> OVER ([PARTITION BY <用于分组的列>] ORDER BY <用于排序的列>)
登录后复制二、LAG()和LEAD()函数介绍

lag和lead分别是向前向后的意思

参数有三个。expression:列名;offset:偏移量;default_value:超出记录窗口的默认值(默认为null,可以设置为0)

三、数据准备(建表sql在最后)

1、LAG()函数:统计与前一天相比温度更高的日期Id

我们先按照日期进行排序,然后找到当天比前一天温度高的id;使用lag()函数,将温度向后推一天。

select id, date, temperature, LAG(temperature, 1, 0) OVER (order by date) as temp FROM weather
登录后复制

查询结果:

然后将temperature大于temp 并且temp不等于0的数据挑选出来

select id from (select id, date, temperature, LAG(temperature, 1, 0) OVER (order by date) as temp FROM weather) tmp where temperature>temp and temp != 0;
登录后复制

结果如下:

2、LEAD()函数:统计与后一天相比温度更高的日期Id

首先,我们对日期进行排序,接着使用lead()函数将温度向后推一天,并找出当天比后一天温度高的id。

select id, date, temperature, LEAD(temperature, 1, 0) OVER (order by date) as temp FROM weather
登录后复制

查询结果:

然后将temperature大于temp 并且temp不等于0的数据挑选出来

select id from (select id, date, temperature, LEAD(temperature, 1, 0) OVER (order by date) as temp FROM weather) tmp where temperature>temp and temp != 0;
登录后复制

查询结果:

四、建表数据sql
DROP TABLE IF EXISTS `weather`;CREATE TABLE `weather`  (  `id` int(11) NOT NULL,  `date` date NULL DEFAULT NULL,  `temperature` int(11) NULL DEFAULT NULL,  PRIMARY KEY (`id`) USING BTREE) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic;-- ------------------------------ Records of weather-- ----------------------------INSERT INTO `weather` VALUES (1, '2022-08-01', 20);INSERT INTO `weather` VALUES (2, '2022-08-02', 25);INSERT INTO `weather` VALUES (3, '2022-08-03', 22);INSERT INTO `weather` VALUES (4, '2022-08-04', 22);INSERT INTO `weather` VALUES (5, '2022-08-05', 26);INSERT INTO `weather` VALUES (6, '2022-08-06', 28);INSERT INTO `weather` VALUES (7, '2022-08-07', 20);SET FOREIGN_KEY_CHECKS = 1;
登录后复制

以上就是MySQL中LAG()函数和LEAD()函数如何使用的详细内容,更多请关注易企推科技其它相关文章!


本文地址:网络百科频道 https://www.eeeoo.cn/wangluo/1151412.html,嗨游网一个专业手游免费下载攻略知识分享平台,本站部分内容来自网络分享,不对内容负责,如有涉及到您的权益,请联系我们删除,谢谢!


网络百科
小编:小嗨整编
相关文章相关阅读
  • 泰剧迷app官网入口(泰剧迷app使用教程)

    泰剧迷app官网入口(泰剧迷app使用教程)

    泰剧迷app官网入口(泰剧迷app使用教程)随着泰剧在国内的流行,越来越多的观众想要找到一款能观看泰剧的软件。泰剧迷App就是一款深受剧迷喜爱的泰剧播放器。本文将为您详细介绍泰剧迷App的官网入口以及使用教程,让您轻松观看喜欢的泰剧。泰剧迷...

  • dnf自动修理怎么使用(dnf自动修理是免费的吗)?

    dnf自动修理怎么使用(dnf自动修理是免费的吗)?

    dnf自动修理怎么使用(dnf自动修理是免费的吗)?在dnf中,装备的耐久度管理是每位玩家都需要面对的问题。为了避免装备因耐久度为0而失去属性加成,dnf提供了自动修理功能。那么,dnf自动修理是怎么用的?它是免费的吗?本文将为您详细解答。...

  • 电脑如何设置密码锁屏(电脑如何设置密码的方法)?

    电脑如何设置密码锁屏(电脑如何设置密码的方法)?

    电脑如何设置密码锁屏(电脑如何设置密码的方法)?随着电脑在日常生活中的普及,个人信息的安全性越来越受到重视。设置密码锁屏是保护电脑隐私的有效方法。本文将为您详细介绍如何在电脑上设置密码锁屏,帮助您轻松实现电脑安全防护。一、Windows系统...

  • 360皮肤中心如何关闭(360皮肤中心怎样删除)?

    360皮肤中心如何关闭(360皮肤中心怎样删除)?

    360皮肤中心如何关闭(360皮肤中心怎样删除)?360皮肤中心是360公司推出的一款电脑软件,用户可以通过它来更改电脑桌面图标、界面风格等,从而实现个性化设置。然而,有些用户可能觉得360皮肤中心的使用体验不佳,想要关闭或删除它。360皮...

  • 不背单词app使用教程(不背单词app是哪个公司的)?

    不背单词app使用教程(不背单词app是哪个公司的)?

    不背单词app使用教程(不背单词app是哪个公司的)?在进入不背单词app后,先给自己选一本适用于当下的词书。选好词书之后就可以开始背啦。从Learn一栏点进去。初步背一个词一共三个关卡:①看英文选中文,先回想词义再选择②根据英文和例句回忆...

  • pkpm软件使用教程(pkpm软件的优点)

    pkpm软件使用教程(pkpm软件的优点)

    pkpm软件使用教程(pkpm软件的优点)PKPM软件是由中国建筑科学研究院研发的一款集建筑设计、结构设计、设备设计、工程量统计、概预算及施工软件等于一体的大型建筑工程综合CAD系统。它遵循国内建筑规范,操作简便,功能强大,广泛应用于各类建...

  • 密码本忘记密码怎么开锁(密码本忘记密码如何打开)?

    密码本忘记密码怎么开锁(密码本忘记密码如何打开)?

    密码本忘记密码怎么开锁(密码本忘记密码如何打开)?随着信息安全意识的提高,越来越多的人开始使用密码本来记录重要的账号和密码。然而,忘记密码本密码的情况也时有发生。本文将为您介绍几种忘记密码本密码时的开锁方法。密码本忘记密码怎么开锁1.按照提...

  • 梦幻西游科举答题器使用方法(梦幻西游科举答题器答案)

    梦幻西游科举答题器使用方法(梦幻西游科举答题器答案)

    梦幻西游科举答题器使用方法(梦幻西游科举答题器答案)梦幻西游科举答题器可以帮助玩家们轻松应对科举考试,获取丰厚奖励。下面,我将为大家详细讲解答题器的使用方法以及梦幻西游科举最新答案。梦幻西游科举答题器使用方法1.在浏览器中搜索“梦幻西游科举...

  • 周排行
  • 月排行
  • 年排行

精彩推荐