当前位置:网站首页>mysql按月查询统计(统计近12个月的项目个数)
mysql按月查询统计(统计近12个月的项目个数)
2022-08-10 15:41:00 【12程序猿】
mysql按月查询统计,没有数据的填充为0
1.获取过去12个月所有的月份
SELECT DATE_FORMAT((CURDATE() - INTERVAL 1 MONTH), '%Y-%m') AS `month`
UNION SELECT DATE_FORMAT((CURDATE() - INTERVAL 2 MONTH), '%Y-%m') AS `month`
UNION SELECT DATE_FORMAT((CURDATE() - INTERVAL 3 MONTH), '%Y-%m') AS `month`
UNION SELECT DATE_FORMAT((CURDATE() - INTERVAL 4 MONTH), '%Y-%m') AS `month`
UNION SELECT DATE_FORMAT((CURDATE() - INTERVAL 5 MONTH), '%Y-%m') AS `month`
UNION SELECT DATE_FORMAT((CURDATE() - INTERVAL 6 MONTH), '%Y-%m') AS `month`
UNION SELECT DATE_FORMAT((CURDATE() - INTERVAL 7 MONTH), '%Y-%m') AS `month`
UNION SELECT DATE_FORMAT((CURDATE() - INTERVAL 8 MONTH), '%Y-%m') AS `month`
UNION SELECT DATE_FORMAT((CURDATE() - INTERVAL 9 MONTH), '%Y-%m') AS `month`
UNION SELECT DATE_FORMAT((CURDATE() - INTERVAL 10 MONTH), '%Y-%m') AS `month`
UNION SELECT DATE_FORMAT((CURDATE() - INTERVAL 11 MONTH), '%Y-%m') AS `month`
运行结果:
2.把上面的月份与显示数据进行关联查询
-- 统计近12个月的项目个数(project 表没有的月份补齐)
select d.`month`,count(p.id) as `count`
from(
SELECT DATE_FORMAT((CURDATE() - INTERVAL 1 MONTH), '%Y-%m') AS `month`
UNION SELECT DATE_FORMAT((CURDATE() - INTERVAL 2 MONTH), '%Y-%m') AS `month`
UNION SELECT DATE_FORMAT((CURDATE() - INTERVAL 3 MONTH), '%Y-%m') AS `month`
UNION SELECT DATE_FORMAT((CURDATE() - INTERVAL 4 MONTH), '%Y-%m') AS `month`
UNION SELECT DATE_FORMAT((CURDATE() - INTERVAL 5 MONTH), '%Y-%m') AS `month`
UNION SELECT DATE_FORMAT((CURDATE() - INTERVAL 6 MONTH), '%Y-%m') AS `month`
UNION SELECT DATE_FORMAT((CURDATE() - INTERVAL 7 MONTH), '%Y-%m') AS `month`
UNION SELECT DATE_FORMAT((CURDATE() - INTERVAL 8 MONTH), '%Y-%m') AS `month`
UNION SELECT DATE_FORMAT((CURDATE() - INTERVAL 9 MONTH), '%Y-%m') AS `month`
UNION SELECT DATE_FORMAT((CURDATE() - INTERVAL 10 MONTH), '%Y-%m') AS `month`
UNION SELECT DATE_FORMAT((CURDATE() - INTERVAL 11 MONTH), '%Y-%m') AS `month`
)d
left join project p on DATE_FORMAT(p.plan_start_date, '%Y-%m')=d.`month`
group by month
运行结果:
边栏推荐
猜你喜欢

程序调试介绍及其使用

Introduction to program debugging and its use

智为链接,慧享生活,荣耀智慧服务,只为 “懂” 你

JS 从零手写实现一个bind方法

商业智能BI行业分析思维框架:铅酸蓄电池行业(二)

【教程】HuggingFace的Optimum组件已支持加速Graphcore和英特尔Habana芯片

Recommend a few had better use the MySQL open source client, collection!

QOS function introduction

Containerization | Scheduled Backups in S3

快速申请代码签名证书方法
随机推荐
虚拟电厂可视化大屏,深挖痛点精准减碳
使用 ABAP 正则表达式解析 uuid 的值
const-modified pointer variable (detailed)
力扣+牛客--刷题记录
第贰章模块大全之《 collections模块》
简述 Mock 接口测试
LeetCode_2598_剑指Offer Ⅱ 091.粉刷房子
TCP为什么是三次握手和四次挥手?
多线程面试指南
关于Web渗透测试需要知道的一切:完整指南
Mobileye携手极氪通过OTA升级开启高级驾驶辅助新篇章
MySQL-创建、修改和删除表
Detailed understanding of anonymous functions and all built-in functions (Part 2)
数据在内存中的存储
第壹章模块大全之《re模块》
LeetCode-101. Symmetric Tree
An ABAP tool that can print the browsing history of a user in the system for BSP applications
一个 ABAP Development Tool 自定义 service endpoint 的测试工具
软件测试用例篇
功能测试vs.非功能测试:能否非此即彼地进行选择?