当前位置: 首页 > news >正文

SQL面试真题解答 数据统计分析,求“同比、环比”等(SQL窗口函数使用)

SQL面试真题解答 数据统计分析,求“同比、环比”等(SQL窗口函数使用)

环比、环比增长率、同比、同比增长率,根据百度百科上的 说明:

环比增长率 环比增长率,一般是指和上期相比较的增长率。 环比增长率=(本期的某个指标的值-上一期这个指标的值)/上一期这个指标的值*100%。 例如,今年5月与今年4月比较。环比更侧重于体现数的短期变化,能够反映出最新趋势和动态。

同比增长率 某个指标的同期比=(当年的某个指标的值-上年同期这个指标的值)/上年同期这个指标的值 即:同比增长率=(当年的指标值-上年同期的值)÷上年同期的值*100%。例如,今年5月与去年5月相比较。同比能够反映出长期的趋势和周期性变化。

解题思路:

01.将数据抽取年份,月份字段,按照年月聚合求总数。

02.利用SQl窗口函数 LAG() 或者 LEAD() 获取前后数据。

03.与昨日比较:按照“日期”排序,取昨日数据。

04.环比:本月与上月比较,将数据按照“年份”分组,按照“月份”排序,取上一个月份数据。

05.同比:今年本月与去年本月比较,将数据按照“月份”分组,按照“年份”排序,取上一个年份数据。

本SQL示例:

未按照月份聚合求和,仍是按照每天查询。 对比昨天,对比上月同一天,对比上年同一天。

考题扩展延伸:

与十天前对比,与三个月前对比,与六个月前对比,与九个月前对比,与三年前对比,与五年前对比。都可以将数据抽取年月日(或者在设计数据库时候,定义年月日字段),使用窗口函数,实现单表查询,做数据分析。

SELECT 	eqm_num,product_month,product_date,yyyy,mm,dd,today_all,today_ng,/*yesterday : 昨天*/yesterday_date,LAG(product_date,1)OVER(PARTITION BY  eqm_num ORDER BY product_date) AS yesterday,LAG(today_all,1)OVER(PARTITION BY  eqm_num ORDER BY product_date) AS yesterday_all,/*mm : 上个月*/last_month_date,LAG(product_date,1)OVER(PARTITION BY eqm_num, yyyy, dd ORDER BY mm) AS mm_day,LAG(today_all,1)OVER(PARTITION BY  eqm_num,yyyy, dd ORDER BY mm) AS mm_day_all,/*yyyy : 上一年*/last_year_date,LAG(product_date,1)OVER(PARTITION BY eqm_num, mm, dd ORDER BY yyyy) AS yyyy_day,LAG(today_all,1)OVER(PARTITION BY eqm_num, mm, dd ORDER BY yyyy) AS yyyy_day_all
FROM (/**/SELECT product_month,product_date,DATEADD(YEAR, -1, product_date) AS last_year_date,DATEADD(MONTH, -1, product_date) AS last_month_date,DATEADD(DAY, -1, product_date) AS yesterday_date,YEAR(product_date) AS yyyy,MONTH(product_date) AS mm,DAY(product_date) AS dd,eqm_num,today_all,today_ng,deletedFROM dbo.tbl_dailyWHERE deleted = 0/**/
)AS aa
WHERE deleted = 0
ORDER BY eqm_num,product_date

相关文章:

SQL面试真题解答 数据统计分析,求“同比、环比”等(SQL窗口函数使用)

SQL面试真题解答 数据统计分析,求“同比、环比”等(SQL窗口函数使用) 环比、环比增长率、同比、同比增长率,根据百度百科上的 说明: 环比增长率 环比增长率,一般是指和上期相比较的增长率。 环比增长率&a…...

【递归、搜索与回溯】floodfill算法二

floodfill算法二 1.被围绕的区域2.太平洋大西洋水流问题3.扫雷游戏4.衣橱整理 点赞👍👍收藏🌟🌟关注💖💖 你的支持是对我最大的鼓励,我们一起努力吧!😃😃 1.被围绕的区域…...

Dataease安装,配置Jenkins自动部署

Dataease安装,配置Jenkins自动部署 一.安装Dataease 安装前准备:1.Ubuntu20.04 LTS国内源安装指定版本Docker 2.docker-compose安装 下载离线安装的安装包,下载地址:https://community.fit2cloud.com/#/download/dataease/v1-…...

关于IDEA启动报错 【JAVA_HOME does not point to a valid JM installation】

希望文章能给到你启发和灵感~ 感谢支持和关注~ 阅读指南 一、基础环境说明1.1 硬件环境1.2 软件环境 二、起因 一、基础环境说明 考虑环境因素不同,大家适当的对比自己的软硬件环境情况分析~ 1.1 硬件环境 MacOS Monterey 版本 1…...

设置小蓝熊的CPU亲和性、CPU优先级再设置法环的CPU亲和性

# 适用于Windows系统 # 时间 : 2024-06-28 # 作者 : 三巧(https://blog.csdn.net/qq_39124701) # 文件名 : 设置小蓝熊的CPU亲和性、CPU优先级再设置法环的CPU亲和性.ps1 # 使用方法: 打开记事本,将所有代码复制到记事本中,保存文件时候修改文件后…...

Oracle中的序列(Sequence)是一种数据库对象

Oracle中的序列(Sequence)是一种数据库对象,用于生成数字序列,通常用于为主键列生成唯一、连续的数值。以下是一些使用序列的案例: 1. **为主键生成唯一值**: 在Oracle中,序列最常用的场景是…...

热点观察 | 《姜饼人王国》新作来袭、《Monopoly GO!》荣登5月全球畅销榜榜首

本周出海热点: 1. 中国品牌借欧洲杯打响知名度 2. 米哈游玩家切割二次元 3. 6月27日,Steam游戏《六月衷曲》上线TapTap 4. 《Monopoly GO!》荣登5月全球畅销榜榜首 5. 《地下城与勇士》拿下本周亚洲T1市场畅销榜冠军 6. 《姜饼人王国》新作强势登顶…...

智能网络构建:探索大模型在网络领域的应用

网络领域以其高度复杂性和快速迭代为特点,完成从网络设计、配置、诊断到安全的网络任务需要广泛的专业知识。这些任务的固有复杂性,加上网络技术和协议不断变化的格局,为传统基于机器学习的方法带来了显著的障碍。这些方法在泛化和自动化网络…...

C++编程逻辑讲解step by step:定义一个Person类,它的每个对象表示一个人。

题目 定义一个Person类,它的每个对象表示一个人。数据成员必须包含姓名、出生年份、死亡年份&#xff0c;一个构造函数&#xff0c;一析构函数&#xff0c;读取数据的成员函数&#xff0c;一个print()成员函数显示所有数据。 #include <iostream> using namespace std;…...

DBdoctor产品介绍

基本信息 DBdoctor是一款企业级数据库监控、巡检、性能诊断、SQL审核与优化平台&#xff0c;致力于解决一切数据库性能问题。采用eBPF技术可对数据库做细粒度的扫描&#xff0c;帮助您一分钟内找到数据库性能问题&#xff0c;实现性能诊断百倍提效。针对数据库性能诊断门槛高、…...

一加Ace3 刷机救砖简化说明

注意&#xff1a;工具使用英文目录&#xff0c;支持救砖和降级。PJE110国行版&#xff0c;CPH2609国际版。目前国行版不能完美转换国际版&#xff0c;每次升级都需要刷oplusstanvbk&#xff0c;不建议使用。跨国转换或ROOT一定先解锁Bootloader&#xff0c;可以使用“一加全能工…...

【服务器05】之【登录/注册账号成功转至游戏场景】

Unity登录注册数据库 打开【服务器01】的文章项目 导入新UI系统 点击2D 双击输入栏位置 修改输入框尺寸及位置 放大字体 修改默认输入文字 发现中文字变成了口口口口 原因是新UI系统不支持中文&#xff0c;解决这个问题需要更换字体 并且修改输入时字体大小 我们取电脑中找Fon…...

平价蓝牙耳机推荐性价比高,性价比高的蓝牙耳机学生党推荐

市场上的蓝牙耳机价格从几十元到几百甚至上千不等&#xff0c;性能与价格也呈现多样化&#xff0c;对于学生党来说&#xff0c;一个理想的选择是那些性价比高的平价蓝牙耳机&#xff0c;它们在不牺牲必要功能的同时&#xff0c;提供了可接受的音质和足够的便利性&#xff0c;接…...

【华为战报】5月、6月HCIP考试战报!

华为认证&#xff1a;HCIA-HCIP-HCIE 点击查看&#xff1a; 【华为战报】4月 HCIP考试战报&#xff01; 【华为战报】2月、3月HCIP考试战报&#xff01; 【华为战报】11月份HCIP考试战报&#xff01; 【HCIE喜报】HCIE备考2个月丝滑通关&#xff0c;考试心得分享&#xff…...

OBD诊断

文章目录 OBD 参考标准OBD 服务OBD服务中的DTCOBD服务中0x03和0x07的区别参考 OBD 参考标准 OBD的标准&#xff1a; ISO 15031 Road Vehicles-Communication between vehicle and external equipment for emission-related diagnostics OBD 服务 序号ID服务说明服务详解10x0…...

Elasticsearch 聚合查询

Hi~&#xff01;这里是奋斗的小羊&#xff0c;很荣幸您能阅读我的文章&#xff0c;诚请评论指点&#xff0c;欢迎欢迎 ~~ &#x1f4a5;&#x1f4a5;个人主页&#xff1a;奋斗的小羊 &#x1f4a5;&#x1f4a5;所属专栏&#xff1a;C语言 &#x1f680;本系列文章为个人学习…...

adb remount fails - mount: ‘system‘ not in /proc/mounts 解决办法

mount -o rw,remount /挂载根 mount -o ro,remount /将状态重置为“ro” 以下是我个人的一些话 我热衷于在网络上分享我遇到的问题和解决方案。如果你有任何问题或需要帮助&#xff0c;欢迎留言交流&#xff0c;在共同学习的道路上一起进步。我很高兴结识那些在学习上积极进取…...

百元蓝牙耳机推荐2024哪个好?蓝牙耳机性价比之王推荐

现在的百元价位的蓝牙耳机成为了许多消费者入门级的选择&#xff0c;它不仅需要满足基础的通话需求&#xff0c;更要在音质、舒适度、续航能力等多方面达到一定的标准&#xff0c;随着技术的发展和市场的竞争激烈&#xff0c;各大品牌在这一价格区间推出了极具竞争力的产品&…...

Spring项目报错解读与全部报错详解

你好,我是Qiuner. 为帮助别人少走弯路和记录自己编程学习过程而写博客 这是我的 github https://github.com/Qiuner ⭐️ ​ gitee https://gitee.com/Qiuner &#x1f339; 如果本篇文章帮到了你 不妨点个赞吧~ 我会很高兴的 &#x1f604; (^ ~ ^) 想看更多 那就点个关注吧 我…...

10秒教会你mysql的连接

连接MySQL数据库通常可以通过多种方法实现&#xff0c;以下是几种常见的方法&#xff0c;我将按照您的要求以清晰、分点的方式归纳说明&#xff1a; 1. 使用MySQL命令行客户端 打开终端或命令提示符&#xff1a;首先&#xff0c;打开您的计算机上的终端或命令提示符窗口。输入…...

python-flask-djangol框架的食品仓库管理系统

目录需求分析与功能规划技术栈选择系统架构设计开发与测试流程安全与性能优化部署方案项目技术支持源码获取详细视频演示 &#xff1a;文章底部获取博主联系方式&#xff01;同行可合作需求分析与功能规划 明确食品仓库管理系统的核心需求&#xff0c;包括库存管理、食品分类、…...

汽车电子测试人的 Prompt 工程

专栏&#xff1a;《AI 汽车电子测试实战》第 17 篇 作者&#xff1a;一线汽车电子测试工程师 适合人群&#xff1a;所有使用 AI 的测试工程师、想提升 AI 使用效率的测试人员开篇&#xff1a;为什么需要学 Prompt&#xff1f; 这是我上个月在某车企的 AI 培训项目中的真实经历。…...

从Python转C++必看:C++20的starts_with/ends_with和Python有何不同?5个易错点详解

从Python转C必看&#xff1a;C20的starts_with/ends_with和Python有何不同&#xff1f;5个易错点详解 当你在Python中熟练使用startswith()和endswith()多年后&#xff0c;突然切换到C20的starts_with和ends_with&#xff0c;可能会觉得"这不就是换个语法吗&#xff1f;&q…...

手把手拆解:一个QKD系统中的‘诱骗态’光源硬件是怎么搭出来的?

手把手拆解&#xff1a;一个QKD系统中的‘诱骗态’光源硬件是怎么搭出来的&#xff1f; 量子密钥分发&#xff08;QKD&#xff09;技术近年来从实验室走向商业化应用&#xff0c;其中诱骗态光源的设计与实现成为工程落地的核心挑战之一。不同于理论论文中简化的模型&#xff0c…...

zotero-style:提升文献管理效率的3个核心方案

zotero-style&#xff1a;提升文献管理效率的3个核心方案 【免费下载链接】zotero-style zotero-style - 一个 Zotero 插件&#xff0c;提供了一系列功能来增强 Zotero 的用户体验&#xff0c;如阅读进度可视化和标签管理&#xff0c;适合研究人员和学者。 项目地址: https:/…...

跨平台B站工具箱:BiliTools让你的视频下载体验焕然一新

跨平台B站工具箱&#xff1a;BiliTools让你的视频下载体验焕然一新 【免费下载链接】BiliTools A cross-platform bilibili toolbox. 跨平台哔哩哔哩工具箱&#xff0c;支持视频、音乐、番剧、课程下载……持续更新 项目地址: https://gitcode.com/GitHub_Trending/bilit/Bil…...

Leetcode 数据结构刷题 ->链表1

[27. 移除元素]移除等于所给值的元素&#xff0c;我们可以直接使用双指针&#xff0c;对着来的。关键就是把不等于x的值&#xff08;我改一下&#xff0c;没用val&#xff09;&#xff0c;放到后面去&#xff0c;这样前面就全部都是不等于x值&#xff0c;再计数即可。看代码就对…...

告别序列‘拉直’的暴力美学:手把手复现MaIR,体验保持图像局部与连续性的Mamba新玩法

告别序列“拉直”的暴力美学&#xff1a;手把手复现MaIR&#xff0c;体验保持图像局部与连续性的Mamba新玩法 在计算机视觉领域&#xff0c;图像修复任务&#xff08;如去噪、超分、去模糊&#xff09;一直是研究热点。传统方法往往将2D图像“拉直”为1D序列进行处理&#xff0…...

链式前向星:高效图存储的进阶指南

1. 为什么需要链式前向星&#xff1f; 当你第一次接触图论算法时&#xff0c;可能会被邻接矩阵和邻接表搞得晕头转向。我刚开始学图论的时候&#xff0c;就经常在这两种存储方式之间纠结。邻接矩阵写起来简单&#xff0c;一个二维数组就能搞定&#xff0c;但当节点数超过10000时…...

PyTorch 2.8镜像一文详解:CUDA 12.4兼容性、cuDNN版本匹配与驱动升级要点

PyTorch 2.8镜像一文详解&#xff1a;CUDA 12.4兼容性、cuDNN版本匹配与驱动升级要点 1. 镜像概述与核心特性 PyTorch 2.8深度学习镜像是一个专为高性能计算设计的优化环境&#xff0c;基于RTX 4090D 24GB显卡和CUDA 12.4深度调优。这个镜像解决了深度学习开发者经常遇到的环…...