mysql 日环比 统计

news2025/3/17 4:10:39

        接到一个任务,要计算日环比的情况。

16、查询销售额日环比情况

日环比: (今日-昨日)/ 昨日 的一个比率情况。

1,建表

DROP TABLE IF EXISTS sale;
create table sale(
  id int not null AUTO_INCREMENT,
  record_date date,
  ammount int default 0,
  primary key(id)
);

2,插入数据

INSERT INTO sale VALUES
(1, '2020-01-01', 1000),
(2, '2020-01-02', 2500),
(3, '2020-01-03', 2000),
(4, '2020-01-04', 3000),
(5, '2020-01-05', 2900),
(6, '2020-01-06', 3100),
(7, '2020-01-07', 3300);

3,sql

1,关联查询的方式:
 SELECT 
 cur.record_date,
 cur.ammount AS current_ammount, 
 pre.ammount AS previous_ammount,  
 (cur.ammount - pre.ammount) AS diffValue,
 (cur.ammount - pre.ammount)/ pre.ammount AS daily_growth_rate
 FROM sale cur, sale pre
 WHERE cur.record_date = DATE_ADD(pre.record_date, INTERVAL 1 DAY);
 -- 或者用
 -- WHERE 1 = DATEDIFF(cur.record_date, pre.record_date);

2,用变量的方式:

错误位置:
-- 放在赋值后面,就跟当天比了,公式变成: (当天 - 昨天 )/当天
SELECT *, (@diff:=ammount-@pre) AS diffValue,@pre:=ammount AS pre,
(@diff / @pre) AS daily_growth_rate 
FROM  sale ORDER BY record_date;

正确位置:
-- 要放前面,但是还是有一个问题,会有第一条,没有去除, 这个麻烦些,还得去除第一条 
SELECT *, (@diff:=ammount-@pre) AS diffValue,
 (@diff / @pre) AS daily_growth_rate, 
  @pre:=ammount AS pre 
FROM  sale ORDER BY record_date;

        第一条也算进去了。跟最后一条进行相比较了。

去除第一条:
SELECT record_date, ammount AS current_ammount, 
pre AS previous_ammount, daily_growth_rate
FROM (
SELECT *, (@diff:=ammount-@pre) AS diffValue,
 (@diff / @pre) AS daily_growth_rate, 
  @pre:=ammount AS pre 
FROM  sale ORDER BY record_date
) AS temp WHERE record_date 
NOT IN (SELECT MIN(record_date) min_record_date FROM sale);

总结:

        日环比,这个用变量的方式,就显得画蛇添足了,直接用sql也更好理解。不过,当做练习还是可以的。

         上一篇: 《mysql 查询实战3-解答》

        下一篇: 《mysql 重复单号 统计》

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1598139.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

偏微分方程算法之二维初边值问题(交替方向隐(ADI)格式)

一、研究对象 以二维抛物型方程初边值问题为研究对象: 为了确保连续性,公式(1)中的相关函数满足: 二、理论推导 2.1 向前欧拉格式 首先进行网格剖分。将三维长方体空间(二维位置平面一维时间轴&#xff09…

还在担心报表不好做?不用怕,试试这个方法(四)

系列文章: 《还在担心报表不好做?不用怕,试试这个方法》(一) 《还在担心报表不好做?不用怕,试试这个方法》(二) 《还在担心报表不好做?不用怕,…

UE5学习日记——制作多语言版本游戏,同时初步学习UI制作、多语言化、控制器配置、独立进程测试、打包配置和快速批量翻译等

所有的文本类,无论变量还是控件等都能实现本地化,以此实现不同语言版本。 在这里先将重点注意标注一下: 所有文本类的变量、控件等都可以多语言;本地化控制板中收集、编译时,别忘了编译这一步;支持批量复制…

海思Hi3519 DV500 部署yolov5并加速优化

本项目代码已开源,见文末 导出onnx模型 yolov5官方地址 利用官方命令导出python export.py --weights yolov5n.pt --include onnx 或者自写代码导出 import os import sys os.chdir(sys.path[0]) import onnx import torch sys.path.append(..) from models.co…

ASP.NET MVC企业级程序设计 (EF+三层架构+MVP实现查询数据)

目录 效果图 实现过程 1创建数据库 2创建项目文件 3创建控制器,右键添加,控制器 ​编辑 注意这里要写Home​编辑 创建成功 数据模型创建过程之前作品有具体过程​编辑 4创建DAL 5创建BLL 6创建视图,右键添加视图 ​编辑 7HomeContr…

[计算机效率] 本地视频播放器:QQPlayer

3.26 本地视频播放器:QQPlayer QQPlayer是一款由腾讯公司开发的视频播放软件,它支持多种视频格式,包括MP4、AVI、FLV等,并且可以播放高清视频。 强大的播放功能:QQPlayer具有强大的解码功能,可以轻松播放…

GIS 数据格式转换

1、在线工具 mapshaper 2、数据上传 3、数据格式转换 导入数据可导出为多种格式:Shapefile、Json、GeoJson、CSV、TopJSON、KML、SVG

面试算法-174-二叉树的层序遍历

题目 给你二叉树的根节点 root ,返回其节点值的 层序遍历 。 (即逐层地,从左到右访问所有节点)。 示例 1: 输入:root [3,9,20,null,null,15,7] 输出:[[3],[9,20],[15,7]] 解 class Solut…

Antd:在文本框中展示格式化JSON

要想将对象转换为格式化 JSON 展示在文本框中,需要用到 JSON.stringify JSON.stringify 方法接受三个参数: value:必需,一个 JavaScript 值(通常为对象或数组)要转换为 JSON 字符串。replacer&#xff1a…

基于springboot+vue实现的疫情防控物资调配与管理系统

作者主页:Java码库 主营内容:SpringBoot、Vue、SSM、HLMT、Jsp、PHP、Nodejs、Python、爬虫、数据可视化、小程序、安卓app等设计与开发。 收藏点赞不迷路 关注作者有好处 文末获取源码 技术选型 【后端】:Java 【框架】:spring…

【软考高项】二十一、政策法规之招投标法知识点学习

一、总则部分 必须招标的 社会公共利益、公众安全的;国有资金投资或者国家融资的;外国政府贷款、援助资金的原则 公开、公平、公正和诚实信用 不得将依法必须进行招标的项目化整为零或者以其他任何方式规避招标、不受地区或者部门的限…

【Go】原子并发操作

目录 一、基本概念 支持的数据类型 主要函数 使用场景 二、基础代码实例 开协程给原子变量做加法 统计多个变量 原子标志判断 三、并发日志记录器 四、并发计数器与性能监控 五、优雅的停止并发任务 worker函数 Main函数 应用价值 Go语言中,原子并发操…

ABAP MESSAGE 常用的类型

类型文本描述A终止处理终止,用户必须重启事务X退出与消息类型A 类似,但带有程序崩溃 MESSAGE_TYPE_XE错误处理受到干扰,用户必须修正输入条目,左下角提示!W警告处理受到干扰,用户可以修正输入条目,左下角提示!I信息处理受到干扰&a…

中断的设备树修改及上机实验(按键驱动)流程

写在前面的话:对于 GPIO 按键,我们并不需要去写驱动程序,使用内核自带的驱动程序 drivers/input/keyboard/gpio_keys.c 就可以,然后你需要做的只是修改设备树指定引脚及键值。 根据驱动文件中的platform_driver中的.of_match_tabl…

一套3种风格经典的wordpress免费主题模板

wordpress免费企业主题 https://www.wpniu.com/themes/39.html 免费wordpress企业模板 https://www.wpniu.com/themes/43.html 免费wordpress企业主题 https://www.wpniu.com/themes/44.html

图灵奖2023:Avi Wigderson的开创性贡献揭示计算中的随机性和伪随机性

文章目录 每日一句正能量前言背景什么是理论计算机科学?为什么随机性很重要?三篇影响深远的论文Avi Wigderson在计算复杂性理论方面的贡献及其对现代计算的影响Avi Wigderson对随机性和伪随机性在计算中作用的理解及其实际应用Avi Wigderson的学术生涯和…

超越GPT-4V!马斯克发布Grok-1.5 With Vision

在 Grok-1 开源后不到一个月,xAI 的首个多模态模型就问世了。Grok-1.5V是XAI的第一代多模态模型,除了其强大的文本处理能力之外,Grok现在还能够处理包括文档、图表、图形、屏幕截图和照片在内的各种视觉信息。相信Grok-1.5V将很快提供给现有的…

基于unity+c#的随机点名系统(简单UI界面+列表+数组)

目录 一、功能界面显示 二、UI 1、视频的使用 (1)渲染纹理 (2) 视频铺全屏 (3)视频的调用 2、 下拉文本框的使用(旧版) 3、输入文本框的使用(旧版) …

OneFlow深度学习简介

介绍 OneFlow是一个基于深度学习的开源框架,主要面向机器学习工程师和研究人员。它提供了类似于其他深度学习框架(如TensorFlow和PyTorch)的API,同时具有高性能和高效的特点。OneFlow专注于在大规模数据集和分布式环境下的训练和推理,以及在生产环境中的部署和优化。其设计…

冯诺依曼结构理解

冯诺依曼结构 存储器:内存 数据是要在计算机的体系结构中进行流动的,在流动过程中对数据加工处理 从一个设备到另一个设备,本质是一种拷贝 CPU的计算速度是很快的,所以数据设备间的拷贝效率,决定了计算机整体的基本效率…