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

SQL查询本年每月的数据

--一、以一行数据的形式,显示本年的12月的数据,本示例以2017年为例,根据统计日期字段判断,计算总和,查询语句如下:selectsum(case when  datepart(month,统计日期)=1 then 支付金额 else 0 end) as '1月',
sum(case when  datepart(month,统计日期)=2 then 支付金额 else 0 end) as '2月',
sum(case when  datepart(month,统计日期)=3 then 支付金额 else 0 end) as '3月',
sum(case when  datepart(month,统计日期)=4 then 支付金额 else 0 end) as '4月',
sum(case when  datepart(month,统计日期)=5 then 支付金额 else 0 end) as '5月',
sum(case when  datepart(month,统计日期)=6 then 支付金额 else 0 end) as '6月',
sum(case when  datepart(month,统计日期)=7 then 支付金额 else 0 end) as '7月',
sum(case when  datepart(month,统计日期)=8 then 支付金额 else 0 end) as '8月',
sum(case when  datepart(month,统计日期)=9 then 支付金额 else 0 end) as '9月',
sum(case when  datepart(month,统计日期)=10 then 支付金额 else 0 end) as '10月',
sum(case when  datepart(month,统计日期)=11 then 支付金额 else 0 end) as '11月',
sum(case when  datepart(month,统计日期)=12 then 支付金额 else 0 end) as '12月'
from TM店铺整体月指标
where datepart(year,统计日期)='2023'

--二、根据当前日期,以列的数据形式,显示本年的12个月的数据,查询语句如下:
select  统计日期=convert(varchar(10),dateadd(month, 0,convert(varchar(10),DATEADD(year, DATEDIFF(year,0,getdate()), 0),120)),120) union all select date=convert(varchar(10),dateadd(month,1,convert(varchar(10),DATEADD(year, DATEDIFF(year,0,getdate()), 0),120)),120) union all select date=convert(varchar(10),dateadd(month,2,convert(varchar(10),DATEADD(year, DATEDIFF(year,0,getdate()), 0),120)),120) union all select date=convert(varchar(10),dateadd(month,3,convert(varchar(10),DATEADD(year, DATEDIFF(year,0,getdate()), 0),120)),120) union all select date=convert(varchar(10),dateadd(month,4,convert(varchar(10),DATEADD(year, DATEDIFF(year,0,getdate()), 0),120)),120) union all select date=convert(varchar(10),dateadd(month,5,convert(varchar(10),DATEADD(year, DATEDIFF(year,0,getdate()), 0),120)),120) union all select date=convert(varchar(10),dateadd(month,6,convert(varchar(10),DATEADD(year, DATEDIFF(year,0,getdate()), 0),120)),120) union all select date=convert(varchar(10),dateadd(month,7,convert(varchar(10),DATEADD(year, DATEDIFF(year,0,getdate()), 0),120)),120) union all select date=convert(varchar(10),dateadd(month,8,convert(varchar(10),DATEADD(year, DATEDIFF(year,0,getdate()), 0),120)),120) union all select date=convert(varchar(10),dateadd(month,9,convert(varchar(10),DATEADD(year, DATEDIFF(year,0,getdate()), 0),120)),120) union all select date=convert(varchar(10),dateadd(month,10,convert(varchar(10),DATEADD(year, DATEDIFF(year,0,getdate()), 0),120)),120) union all select date=convert(varchar(10),dateadd(month,11,convert(varchar(10),DATEADD(year, DATEDIFF(year,0,getdate()), 0),120)),120)

--二、具体应用示例:以2017为例,查询语句如下:with t as 
( select  统计日期=substring(convert(varchar(10),dateadd(month, 0,convert(varchar(10),DATEADD(year, DATEDIFF(year,0,getdate()), 0),120)),120),6,2) union all select date=substring(convert(varchar(10),dateadd(month,1,convert(varchar(10),DATEADD(year, DATEDIFF(year,0,getdate()), 0),120)),120),6,2) union all select date=substring(convert(varchar(10),dateadd(month,2,convert(varchar(10),DATEADD(year, DATEDIFF(year,0,getdate()), 0),120)),120),6,2) union all select date=substring(convert(varchar(10),dateadd(month,3,convert(varchar(10),DATEADD(year, DATEDIFF(year,0,getdate()), 0),120)),120),6,2) union all select date=substring(convert(varchar(10),dateadd(month,4,convert(varchar(10),DATEADD(year, DATEDIFF(year,0,getdate()), 0),120)),120),6,2) union all select date=substring(convert(varchar(10),dateadd(month,5,convert(varchar(10),DATEADD(year, DATEDIFF(year,0,getdate()), 0),120)),120),6,2) union all select date=substring(convert(varchar(10),dateadd(month,6,convert(varchar(10),DATEADD(year, DATEDIFF(year,0,getdate()), 0),120)),120),6,2) union all select date=substring(convert(varchar(10),dateadd(month,7,convert(varchar(10),DATEADD(year, DATEDIFF(year,0,getdate()), 0),120)),120),6,2) union all select date=substring(convert(varchar(10),dateadd(month,8,convert(varchar(10),DATEADD(year, DATEDIFF(year,0,getdate()), 0),120)),120),6,2) union all select date=substring(convert(varchar(10),dateadd(month,9,convert(varchar(10),DATEADD(year, DATEDIFF(year,0,getdate()), 0),120)),120),6,2)union all select date=substring(convert(varchar(10),dateadd(month,10,convert(varchar(10),DATEADD(year, DATEDIFF(year,0,getdate()), 0),120)),120),6,2)union all select date=substring(convert(varchar(10),dateadd(month,11,convert(varchar(10),DATEADD(year, DATEDIFF(year,0,getdate()), 0),120)),120),6,2) 
)select id=ROW_NUMBER()OVER(ORDER BY t1.统计日期),统计日期=t1.统计日期+'月',     支付金额=sum(isnull(t2.支付金额,0)) from t t1 left join(select substring(convert(varchar,统计日期,120),6,2) as 统计日期,sum(支付金额) as 支付金额--count(*) as countsfrom TM店铺整体月指标  where datepart(year,统计日期)='2023' group by substring(convert(varchar,统计日期,120),6,2)  ) t2 on t1.统计日期= t2.统计日期group by t1.统计日期 

--sql 查询每一年1到12月的数据
Select Year(统计日期) as 年份,Month(统计日期)  as 月份,SUM(支付金额) as 支付金额
FROM TM店铺整体月指标Group by Year(统计日期),Month(统计日期)

--2、每月
select year(统计日期) 年,month(统计日期) 月,
sum(支付金额) as 支付金额, sum(老买家支付金额) as 老买家支付金额,sum(支付件数) as 支付件数,
sum(直通车消耗) as 直通车消耗,sum(淘宝客佣金) as 淘宝客佣金,sum(钻石展位消耗) as 钻石展位消耗,sum(成功退款金额) as 成功退款金额,
sum(PC端支付金额) as PC端支付金额,sum(无线端支付金额) as  无线端支付金额,
sum(PC端支付件数) as PC端支付件数,sum(无线端支付件数) as 无线端支付件数from TM店铺整体日指标WHEREYEAR (统计日期) = 2023   -- 这里假设你要查 2023年的每月的统计。group by year(统计日期),month(统计日期)

--按年统计 
SELECT year(统计日期) 年次, 
sum(支付金额) as 支付金额, sum(老买家支付金额) as 老买家支付金额,sum(支付件数) as 支付件数,
sum(直通车消耗) as 直通车消耗,sum(淘宝客佣金) as 淘宝客佣金,sum(钻石展位消耗) as 钻石展位消耗,sum(成功退款金额) as 成功退款金额,
sum(PC端支付金额) as PC端支付金额,sum(无线端支付金额) as  无线端支付金额,
sum(PC端支付件数) as PC端支付件数,sum(无线端支付件数) as 无线端支付件数FROM TM店铺整体月指标 
GROUP BY year(统计日期)

--按月逐级累计查询语句:
SELECT a.统计日期, SUM(b.支付金额) as 支付金额  FROM(SELECT 统计日期, SUM(支付金额) 支付金额 FROM TM店铺整体月指标 GROUP BY 统计日期) a
INNER JOIN(SELECT 统计日期, SUM(支付金额) 支付金额 FROM TM店铺整体月指标 GROUP BY 统计日期) b
ON a.统计日期 >= b.统计日期
GROUP BY a.统计日期
ORDER BY a.统计日期

--按周统计 (年度周次)
SELECT datepart(week, 统计日期) 周次, count(1) 销售天数, sum(支付金额) as 支付金额, sum(老买家支付金额) as 老买家支付金额,sum(支付件数) as 支付件数,
sum(直通车消耗) as 直通车消耗,sum(淘宝客佣金) as 淘宝客佣金,sum(钻石展位消耗) as 钻石展位消耗,sum(成功退款金额) as 成功退款金额,
sum(无线端支付金额) as  无线端支付金额,sum(PC端支付金额) as PC端支付金额,
sum(无线端支付件数) as 无线端支付件数, sum(PC端支付件数) as PC端支付件数FROM TM店铺整体日指标 
WHERE year(统计日期)=year(getdate()) 
GROUP BY datepart(week, 统计日期) 

--按周统计 (月份周次)
SELECT weekName 周次,count(1) 销售次数, sum(支付金额) as 支付金额, sum(老买家支付金额) as 老买家支付金额,sum(支付件数) as 支付件数,
sum(直通车消耗) as 直通车消耗,sum(淘宝客佣金) as 淘宝客佣金,sum(钻石展位消耗) as 钻石展位消耗,sum(成功退款金额) as 成功退款金额,
sum(无线端支付金额) as  无线端支付金额,sum(PC端支付金额) as PC端支付金额,
sum(无线端支付件数) as 无线端支付件数, sum(PC端支付件数) as PC端支付件数from (
SELECT cast(datepart(month,统计日期) as varchar(2)) + '月第'+ cast((datepart(week,统计日期) - datepart(week,convert(varchar(7),统计日期,120) + '-01') + 1) as varchar(2)) + '周'  
weekName,支付金额,老买家支付金额,支付件数,直通车消耗,淘宝客佣金,钻石展位消耗,成功退款金额,无线端支付金额,PC端支付金额,无线端支付件数,PC端支付件数
FROM TM店铺整体日指标 
WHERE year(统计日期)=year(getdate()) 
)tb
GROUP BY weekName 

--按季统计 
SELECT datepart(quarter, 统计日期) 季次, count(1) 销售次数,sum(支付金额) as 支付金额, sum(老买家支付金额) as 老买家支付金额,sum(支付件数) as 支付件数,
sum(直通车消耗) as 直通车消耗,sum(淘宝客佣金) as 淘宝客佣金,sum(钻石展位消耗) as 钻石展位消耗,sum(成功退款金额) as 成功退款金额,
sum(无线端支付金额) as  无线端支付金额,sum(PC端支付金额) as PC端支付金额,
sum(无线端支付件数) as 无线端支付件数, sum(PC端支付件数) as PC端支付件数FROM TM店铺整体月指标 
WHERE year(统计日期)=year(getdate()) 
GROUP BY datepart(quarter, 统计日期) 

相关文章:

SQL查询本年每月的数据

--一、以一行数据的形式,显示本年的12月的数据,本示例以2017年为例,根据统计日期字段判断,计算总和,查询语句如下:selectsum(case when datepart(month,统计日期)1 then 支付金额 else 0 end) as 1月, sum…...

C++之struct和union对比介绍

C之struct和union对比介绍 在C中,struct和union都是用来定义自定义数据类型的关键字,但它们的作用略有不同。 首先了解一下它们的基本概念: struct(结构体):struct 是一个用户自定义的数据类型&#xff…...

微服务--SkayWalking(链路追踪:国产开源框架)

SkayWalking:分布式系统的应用程序性能监视工具 作用:分布式追踪、性能指标分析、应用、服务依赖分析; SkayWalking性能剖析: 我操,能够定位到某一个方法会有多慢。。。 通过Tid查看全局所有的日志信息&#xff08…...

在Windows 10上部署ChatGLM2-6B:掌握信息时代的智能对话

在Windows 10上部署ChatGLM2-6B:掌握信息时代的智能对话 硬件环境ChatGLM2-6B的量化模型最低GPU配置说明准备工作ChatGLM2-6B安装部署ChatGLM2-6B运行模式解决问题总结 随着当代科技的快速发展,我们进入了一个数字化时代,其中信息以前所未有的…...

LRU和LFU算法的简单实现

LRU #include <iostream> #include <unordered_map> #include <list> struct Node{int key;int value;Node(int key, int value):key(key),value(value){} }; class LruCache{ private:int maxCapacity;// 最大容量std::list<Node>CacheList;// 缓存链…...

OCR多语言识别模型构建资料收集

OCR多语言识别模型构建 构建多语言识别模型方案 合合&#xff0c;百度&#xff0c;腾讯&#xff0c;阿里这四家的不错 调研多家&#xff0c;发现有两种方案&#xff0c;但是大多数厂商都是将多语言放在一个字典里&#xff0c;构建1w~2W的字典&#xff0c;训练一个可识别多种语…...

倍增的经典题目:扩大区间、st表

1. 扩大区间 P4155 [SCOI2015] 国旗计划例题1&#xff1a;P4155 [SCOI2015] 国旗计划 计算能覆盖整个圆圈的最少区间&#xff0c;题目给定的所有区间互相不包含&#xff0c;按区间左端点排序后&#xff0c;区间的右端点也是单增的。 我们首先需要化圆为线&#xff0c;然后贪…...

LeetCode——和为K的子数组(中等)

题目 给你一个整数数组 nums 和一个整数 k &#xff0c;请你统计并返回 该数组中和为 k 的连续子数组的个数 。 示例 1&#xff1a; 输入&#xff1a;nums [1,1,1], k 2 输出&#xff1a;2示例 2&#xff1a; 输入&#xff1a;nums [1,2,3], k 3 输出&#xff1a;2 题解 …...

Truncation Sampling as Language Model Desmoothing

本文是LLM系列文章&#xff0c;针对《Truncation Sampling as Language Model Desmoothing》的翻译。 截断采样作为语言模型的去平滑性 摘要1 引言2 背景3 截断作为去平滑性4 方法5 实验与结果6 相关工作7 结论8 不足 摘要 来自神经语言模型的长文本样本可能质量较差。截断采…...

docker安装jenkins

运行jenkins docker run -d \--name jenkins \ --hostname jenkins \-u root \-p 29090:8080 \--restart always \-v D:\springcloud\学习\jekins\jenkins\jks_home:/var/jenkins_home \ jenkins/jenkins获取root登录密码 密码在jekins_home/secrets/initalAdminPassword文件…...

学习pytorch8 土堆说卷积操作

土堆说卷积操作 官网debug torch版本只有nn 没有nn.functional代码执行结果 B站小土堆视频学习笔记 官网 https://pytorch.org/docs/stable/nn.html#convolution-layers 常用torch.nn, nn是对nn.functional的封装&#xff0c;使函数更易用。 卷积核从输入图像左上角&#xf…...

pytest自动化测试两种执行环境切换的解决方案

目录 一、痛点分析 方法一&#xff1a;Hook方法pytest_addoption注册命令行参数 1、Hook方法注解 2、使用方法 方法二&#xff1a;使用插件pytest-base-url进行命令行传参 一、痛点分析 在实际企业的项目中&#xff0c;自动化测试的代码往往需要在不同的环境中进行切换&am…...

说说TIME_WAIT和CLOSE_WAIT区别

分析&回答 TCP协议规定&#xff0c;对于已经建立的连接&#xff0c;网络双方要进行四次握手才能成功断开连接&#xff0c;如果缺少了其中某个步骤&#xff0c;将会使连接处于假死状态&#xff0c;连接本身占用的资源不会被释放。网络服务器程序要同时管理大量连接&#xf…...

Docker的优势

Docker是一种开源的容器化平台&#xff0c;提供了一种将应用程序、库和其它依赖项封装在容器中的方法。以下是Docker的基本概念和优势&#xff1a; 基本概念&#xff1a; 镜像&#xff1a;一个Docker镜像是一个可运行的软件包&#xff0c;包括应用程序、库和其它依赖项。它是D…...

C++——string使用

string的常见构造接口 string() 构造空的srting类对象&#xff0c;空字符串 string(const char* str) 用字符串初始化 string(const string& str)拷贝构造&#xff0c;使用string类初始化string(size_t n, char c) 用n个字符c初始化 string s1; string s2("hello …...

10. selenium API (二)

目录 1. 多层框架/窗口定位 2. 下拉框处理 2.1 前端界面 2.2 代码 3. 针对 alert 弹窗进行操作 3.1 前端界面 3.2 代码 4. 文件提交 4.1 前端界面 4.2 代码 5. 显示等待 6. 操作浏览器滚动条 7. 截图 8. 浏览器关闭 9. 窗口切换 在上篇文章中&#xff0c;我们学…...

[国产MCU]-W801开发实例-用户报文协议(UDP)数据接收和发送

用户报文协议(UDP)数据接收和发送 文章目录 用户报文协议(UDP)数据接收和发送1、UDP简单介绍2、W801的UDP创建逻辑2.1 UDP使用步骤2.2 代码实现1、UDP简单介绍 用户数据报协议 (UDP) 是一种跨互联网使用的通信协议,用于对时间敏感的传输,例如视频播放或 DNS查找。它通过在数…...

JavaScript 生成 16: 9 宽高比

这篇文章只是对 for 循环一个简单应用&#xff0c;没有什么知识含量。 可以跳过这篇文章。 只是我用来保存一下我的代码&#xff0c;保存在本地我嫌碍眼&#xff0c;总想把他删了。 正文部分 公式&#xff1a;其中 width 表示宽度&#xff0c;height 表示高度 16 9 w i d t…...

HTML5之drawImage函数

参数说明&#xff1a; drawImage(image, x, y) //按原图片大小绘制。 drawImage(image, x, y, width, height) //按指定大小绘制。 drawImage(image, sourceX, sourceY, sourceWidth, sourceHeight, destX, destY, destWidth, destHeight) //常用于图片裁剪。 其中&#xff1a…...

leetcode7.整数反转-Java

题目 给你一个 32 位的有符号整数 x &#xff0c;返回将 x 中的数字部分反转后的结果。 如果反转后整数超过 32 位的有符号整数的范围 [−231, 231 − 1] &#xff0c;就返回 0。 假设环境不允许存储 64 位整数&#xff08;有符号或无符号&#xff09;。 7. 整数反转 - 力扣&a…...

深度学习从心电信号中解码呼吸频率:原理、实现与临床价值

1. 项目概述&#xff1a;从心电信号中“听”到呼吸声呼吸频率&#xff0c;这个我们每分钟都在进行却很少被精确量化的生命体征&#xff0c;在临床医学中扮演着至关重要的角色。它不仅是评估呼吸系统功能的直接指标&#xff0c;更是反映全身代谢、循环乃至神经系统状态的“窗口”…...

物联网与云技术赋能咖啡后处理:CeriTech 的实时监控系统实践

1. 项目概述&#xff1a;用物联网与云技术重塑咖啡后处理在印尼的咖啡农场里&#xff0c;传统的发酵与干燥过程很大程度上依赖“感觉”和“经验”。一位有经验的农人可能会用手触摸、用鼻子闻&#xff0c;或者根据天气和日照时间来估算发酵是否完成、干燥是否均匀。这种方法固然…...

Lindy自动化效率翻倍的秘密:从零搭建高可靠多步骤任务流的7步黄金流程

更多请点击&#xff1a; https://intelliparadigm.com 第一章&#xff1a;Lindy自动化效率翻倍的秘密&#xff1a;从零搭建高可靠多步骤任务流的7步黄金流程 Lindy自动化平台以“越久越可靠”为设计哲学&#xff0c;将经典软件工程原则与现代可观测性实践深度融合。其核心优势…...

Taotoken平台快速获取APIKey并开始你的第一个Python调用示例

&#x1f680; 告别海外账号与网络限制&#xff01;稳定直连全球优质大模型&#xff0c;限时半价接入中。 &#x1f449; 点击领取海量免费额度 Taotoken平台快速获取APIKey并开始你的第一个Python调用示例 1. 准备工作&#xff1a;注册与登录 要开始使用Taotoken&#xff0c…...

电信运营商每月处理海量工单,如何不再出错?基于AI Agent的端到端自动化解决方案

在2026年的电信行业&#xff0c;海量工单处理已不再仅仅是效率问题&#xff0c;而是合规与生存的底线。随着2026年5月20日《电信和互联网服务 基础电信企业网上营业厅服务规范》国家标准的正式实施&#xff0c;监管层对“信息透明、流程闭环、计费精准”的要求达到了前所未有的…...

当 AI Coding 进入复杂企业系统,为什么提效远没有宣传里那么美好 ?

以 Claude Code、Codex 为代表的自主编码智能体&#xff08;Coding Agents&#xff09;&#xff0c;正在以惊人的速度席卷软件开发者生态。与此同时&#xff0c;类似“10 倍开发效率”“普通人也能随手构建软件”“程序员即将失业”的说法&#xff0c;也随处可见。这种不分场景…...

WebSocket实时通信架构进阶:Room、命名空间与集群部署

WebSocket实时通信架构进阶:Room、命名空间与集群部署 作者:Crown_22 | AI Agent & Hermes Agent 桌面程序开发者 前言 WebSocket已经成为实时应用的标准技术,但大多数教程只停留在"建立连接、发送消息"的基础阶段。在生产环境中,你需要处理Room管理、命名空…...

探索Windows 10上的Android世界:揭秘WSA-Windows-10项目的3个技术突破

探索Windows 10上的Android世界&#xff1a;揭秘WSA-Windows-10项目的3个技术突破 【免费下载链接】WSA-Windows-10 This is a backport of Windows Subsystem for Android to Windows 10. 项目地址: https://gitcode.com/gh_mirrors/ws/WSA-Windows-10 想象一下&#…...

氘可来昔替尼常见副作用为鼻咽炎头痛及腹泻,如何应对?

任何口服药物的临床价值&#xff0c;都必须在疗效与安全性的天平上找到精准的平衡点。氘可来昔替尼以PASI 75应答率的全面胜出证明了自己在银屑病治疗中的卓越地位&#xff0c;而其不良反应谱同样经过了严苛的临床验证。鼻咽炎、头痛和腹泻构成了这款药物最需关注的三大安全信号…...

别再手动测模型了!用Simulink Test Manager实现自动化测试(附Excel表格配置详解)

从手动测试到智能验证&#xff1a;Simulink Test Manager全流程自动化实战指南 在模型开发的迭代过程中&#xff0c;工程师们常常陷入"修改-测试-记录"的循环泥潭。每次参数调整后&#xff0c;手动运行模型、记录数据、比对结果不仅消耗大量时间&#xff0c;更可能因…...