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

mysql按照日期分组统计数据

目录

    • 前言
    • 按天统计
    • 按周统计
    • 按月统计
    • 按年统计
    • date_format参数

前言

mysql的date_format函数想必大家都使用过吧,一般用于日期时间转化

# 例如
select DATE_FORMAT('2023-01-01 08:30:50','%Y-%m-%d %H:%i:%s')
# 可以得出 2023-01-01 08:30:50# 或者是
select DATE_FORMAT('2023-01-01 08:30:50','%Y-%m-%d')
# 可以得出 

不过很多时间不仅仅仅限于这些最基础的使用,当我们需要对于时间的数据有更高的要求时,就需要对这个函数有更多的了解了,例如按一定的时间段分组统计这段时间的数据,本期我们主要讲这个分组统计的操作,下面直接进入正题

按天统计

按天统计是一个比较基础的统计方式,大部分人也应该能直接写出来

select date_format(o.bill_date,'%Y-%m-%d') evertday,COUNT(*) orderNumFROM table oGROUP BY evertdayORDER BY evertday DESC

在这里插入图片描述

按周统计

按周统计就比较麻烦一点了,我这边提供了两种思路:

第一种:

SELECTsubdate(date_format(o.bill_date,'%Y-%m-%d'),date_format(o.bill_date,'%w')) weekend,COUNT(*) orderNumFROM test oGROUP BY weekendORDER BY weekend DESCLIMIT 9

在这里插入图片描述
这边可以看出日期已经按照周进行排序分组了,7月30到8月5号的数据都已经统计到了7月30这个weekend中
我们简单剖析一下:
首先date_format(o.bill_date,'%Y-%m-%d')大家都很清楚会把日期变成yyyy-MM-dd形式
在这里插入图片描述
date_format(o.bill_date,'%w')会统计这天是这周的礼拜几,这个参数我在最后整理了一张表格可供大家查看使用
那么8月2号正好是礼拜三,再通过subdate函数去减一下这个日期就可以统计出来一个对应的时间了,或者也有朋友喜欢用DATE_SUB函数都是一样的效果,这样就统计出来了上周末的时间,也就是上周末到这周末是一个轮回
在这里插入图片描述

第二种:

-- 2、
select -- 	weekday(bill_date) as weekday,date_format(date_add(bill_date, interval - (weekday(bill_date) +1) day),'%Y-%m-%d') as monday,count(1)
from t 
group by monday
order by monday desc

总体的思路都差不多,计算出了上周日的时间点进行group by
在这里插入图片描述

按月统计

按月统计的话就是另外一种思路了,因为按周的统计的话还存在日的概念,而按月统计的话就可以省略掉日期了

selectDATE_FORMAT( bill_date, '%Y-%m' ) months,count(1) count 
fromt
group by months
order by months desc

在这里插入图片描述

按年统计

这个跟按月统计一个道理,只统计年份就可以了

selectDATE_FORMAT( bill_date, '%Y' ) months,count(1 ) count 
fromt
group by months
order by months desc

在这里插入图片描述

date_format参数

格式描述
%M月名字(January……December)
%W星期名字(Sunday……Saturday)
%D有英语前缀的月份的日期(1st, 2nd, 3rd, 等等。)
%Y年, 数字, 4 位
%y年, 数字, 2 位
%a缩写的星期名字(Sun……Sat)
%d月份中的天数, 数字(00……31)
%e月份中的天数, 数字(0……31)
%m月, 数字(01……12)
%c月, 数字(1……12)
%b缩写的月份名字(Jan……Dec)
%j一年中的天数(001……366)
%H小时(00……23)
%k小时(0……23)
%h小时(01……12)
%I小时(01……12)
%l小时(1……12)
%i分钟, 数字(00……59)
%r时间,12 小时(hh:mm:ss [AP]M)
%T时间,24 小时(hh:mm:ss)
%S秒(00……59)
%s秒(00……59)
%pAM或PM
%w一个星期中的天数(0=Sunday ……6=Saturday )
%U星期(0……52), 这里星期天是星期的第一天
%u星期(0……52), 这里星期一是星期的第一天
%%一个文字“%”

相关文章:

mysql按照日期分组统计数据

目录 前言按天统计按周统计按月统计按年统计date_format参数 前言 mysql的date_format函数想必大家都使用过吧,一般用于日期时间转化 # 例如 select DATE_FORMAT(2023-01-01 08:30:50,%Y-%m-%d %H:%i:%s) # 可以得出 2023-01-01 08:30:50# 或者是 select DATE_FOR…...

19 | 分类模型评估指标

文章目录 Python分类模型评估指标准确率(Accuracy)精确率(Precision)召回率(Recall)F1值(F1 Score)混淆矩阵(Confusion Matrix)ROC曲线和AUC值1. 准备数据集2. 初始化并训练逻辑回归模型3. 获取预测概率并计算ROC曲线和AUC值4. 绘制ROC曲线5. 整合代码结论Python分类…...

【Pycharm2022.2.1】python编辑器最新版安装教程(包含2017-2022的所有版本win/mac/linux)

前言 嗨喽~大家好呀,这里是魔王呐 ❤ ~! 永久安装 Pycharm(2017-2022的win/mac/linux所有版本)/ IntelliJ IDEA也可以, 按照本文教程所写的,具体步骤跟着下面的图文教程一步一步来就行,一分钟即可搞定,过…...

深度学习-相关概念

Adam优化器 Adam,Adaptive Moment Estimation,自适应矩估计。是2014年提出的一种万金油式的优化器,使用起来非常方便,梯度下降速度快,但是容易在最优值附近震荡。竞赛中性能会略逊于SGD,毕竟最简单的才是最…...

眼科医生推荐的台灯 护眼台灯买什么好?

我家孩子需要一个护眼灯,就请教了我的一个医生朋友。大家都知道医生白天对着电脑长时间的工作,晚上还要看书,查文献,写论文,选一个对眼睛友好的高质量护眼台灯对他们是刚需,同时又是医生,所以他…...

如何使用 ChatGPT 为 Midjourney 或 DALL-E 等 AI 图片生成提示词

人工智能为创意产业开辟了一个充满可能性的全新世界。人工智能最令人兴奋的应用之一是生成独特且原创的艺术品。Midjourney 和 DALL-E 是人工智能生成艺术的两个突出例子,吸引了艺术家和艺术爱好者的注意。在本文中,我们将探索如何使用 ChatGPT 生成 AI …...

【Linux后端服务器开发】Reactor模式实现网络计算器

目录 一、Reactor模式概述 二、日志模块:Log.hpp 三、TCP连接模块:Sock.hpp 四、非阻塞通信模块:Util.hpp 五、多路复用I/O模块:Epoller.hpp 六、协议定制模块:Protocol.hpp 七、服务器模块:Server.…...

【WebRTC---源码篇】(二:一)PeerConnection详解

Track的添加 上图是整体流程图 RTCErrorOr<rtc::scoped_refptr<RtpSenderInterface>> PeerConnection::AddTrack(rtc::scoped_refptr<MediaStreamTrackInterface> track,const std::vector<std::string>& stream_ids) {RTC_DCHECK_RUN_ON(signal…...

使用tinyxml解析和修改XML文件

首先要清楚XML文件包含哪些元素&#xff1a; 他是由元素、文本或者两者混合物组成。元素可以拥有属性&#xff0c;元素是指从开始标签到结束标签的部分。 <?xml version"1.0" encoding"UTF-8" ?> <books><book id"1001">&…...

[Docker实现测试部署CI/CD----相关服务器的安装配置(1)]

目录 0、CI/CD系统最终架构图规划IP地址 1、git配置Git下载pycharm配置gitidea配置git 2、GitLab安装与配置主机要求拉取镜像定义 compose.yml启动gitlab浏览器访问并修改密码查看登录密码修改密码 3、SonarQube 安装与配置拉取镜像修改虚拟内存的大小启动SonarQube登录 SonarQ…...

【自动化运维】编写LNMP分布式剧本

目录 一 playbook编写LNMP1.1环境设置1.2编写Nginx剧本1.3、编写Mysql剧本1.4准备PHP剧本 一 playbook编写LNMP 1.1环境设置 ip服务192.168.243.100ansible192.168.243.102nginx192.168.243.103PHP192.168.243.104mysql 1.2编写Nginx剧本 1.编写Nginx源 mkdir -p /etc/ans…...

用Rust实现23种设计模式之单例

话不多说&#xff0c;上代码&#xff01; 1. 使用Arc Mutex 在这个例子中&#xff0c;我们使用了 Arc &#xff08;原子引用计数&#xff09;和 Mutex &#xff08;互斥锁&#xff09;来实现线程安全的单例。通过 get_instance 方法&#xff0c;我们可以获取到单例实例&…...

小米平板6将推14英寸版!与MIX Fold 3同步推出

今天&#xff0c;知名数码博主数码闲聊站爆料消息&#xff0c;称小米平板6将推出一款Max版本&#xff0c;预计与小米MIX Fold 3同步推出。 据介绍&#xff0c;小米平板6 Max将是小米首款14英寸大屏的旗舰平板&#xff0c;平板搭载骁龙8处理器&#xff0c;在性能释放、影音表现、…...

webpack 的一点知识

多个入口共享多个模块 在使用webpack搭建多页面应用时候需要多个入口&#xff0c;这个时候需要考虑到模块共享问题了 可以使用entry.dependOn 来处理 entry: {home: {import: "./pages/home/index.js",// 其中vendors里边使用到模块&#xff0c;不会打入home对应的…...

Python 双目摄像机控制(windows + linux)

一、Windows 下载 Download libusb-win32-devel-filter-1.2.6.0.exe (libusb-win32) 安装&#xff0c;在弹出框中选择摄像机usb设备 pip install pyusb pip install libusb 代码如下&#xff0c;注意如果报错要以管理员权限运行&#xff1a; import cv2 import usb.corecam…...

mybatisplus实现自动填充 时间

mybatisplus实现自动填充功能——自动填充时间 数据库表中的字段 创建时间 (createTime)更新时间 (updateTime) 每次 增删改查的时候&#xff0c;需要通过对Entity的字段&#xff08;createTime&#xff0c;updateTime&#xff09;进行set设置&#xff0c;但是&#xff0c;每…...

P5732 【深基5.习7】杨辉三角

题目描述 给出 n ( n ≤ 20 ) n(n\le20) n(n≤20)&#xff0c;输出杨辉三角的前 n n n 行。 如果你不知道什么是杨辉三角&#xff0c;可以观察样例找找规律。 输入格式 输出格式 样例 #1 样例输入 #1 6样例输出 #1 1 1 1 1 2 1 1 3 3 1 1 4 6 4 1 1 5 10 10 5 11.题目…...

ubuntu调整路由顺序

Ubuntu系统跳转路由顺序 1、安装ifmetric sudo apt install ifmetric2、查看路由 route -n3、把Iface下面的eth1调到第一位 sudo ifmetric eth1 0命令中eth1是网卡的名称&#xff0c;更改网卡eth1的跃点数&#xff08;metric值&#xff09;为0&#xff08;数值越小&#xf…...

集成学习算法是什么?如何理解集成学习?

什么是集成学习&#xff1f; 集成学习通过建立几个模型来解决单一预测问题。它的工作原理是生成多个分类器/模型&#xff0c;各自独立地学习和作出预测。这些预测最后结合成组合预测&#xff0c;因此优于任何一个单分类的做出预测。 机器学习的两个核心任务 任务一&#xff1…...

npm配置最新淘宝镜像

目录 1、设置淘宝镜像2、查看源 1、设置淘宝镜像 默认的官方镜像&#xff1a;https://registry.npmjs.org&#xff0c;切换国内淘宝镜像&#xff0c;访问下载更快。 npm config set registry https://registry.npmmirror.com/其他&#xff0c;如pnpm&#xff1a; pnpm confi…...

5分钟快速上手:使用Autovisor智慧树自动化学习工具解放你的双手

5分钟快速上手&#xff1a;使用Autovisor智慧树自动化学习工具解放你的双手 【免费下载链接】Autovisor 2025智慧树刷课脚本 基于Python Playwright的自动化程序 [有免安装版] 项目地址: https://gitcode.com/gh_mirrors/au/Autovisor 你是否厌倦了重复点击智慧树课程视…...

深蓝词库转换:跨平台输入法词库迁移的终极解决方案

深蓝词库转换&#xff1a;跨平台输入法词库迁移的终极解决方案 【免费下载链接】imewlconverter ”深蓝词库转换“ 一款开源免费的输入法词库转换程序 项目地址: https://gitcode.com/gh_mirrors/im/imewlconverter 你是否曾经因为更换电脑或手机而丢失了精心积累多年的…...

Go语言的sync.RWMutex源码

Go语言中的并发控制利器&#xff1a;sync.RWMutex源码探秘 在Go语言的并发编程中&#xff0c;sync.RWMutex是一个高效且常用的读写锁实现。它允许多个读操作并发执行&#xff0c;而写操作则独占访问&#xff0c;这种设计显著提升了高并发场景下的性能表现。本文将深入分析sync…...

工业检测新思路:LingBot-Depth修复ToF传感器缺失深度

工业检测新思路&#xff1a;LingBot-Depth修复ToF传感器缺失深度 在工业检测领域&#xff0c;你是不是经常遇到这样的头疼事&#xff1a;花大价钱买的ToF深度传感器&#xff0c;一到反光表面或者透明材质上&#xff0c;深度数据就“消失”了一大片&#xff0c;留下一个个黑洞。…...

.NET源码生成器基于partial范式开发和nuget打包欧

1 安装与初始化 # 全局安装 OpenSpec npm install -g fission-ai/openspeclatest # 在项目目录下初始化 cd /path/to/your-project openspec init 初始化时&#xff0c;OpenSpec 会提示你选择使用的 AI 工具&#xff08;Claude Code、Cursor、Trae、Qoder 等&#xff09;。 3 O…...

存储那么贵,何不白嫖飞书云文件空间还

基础示例&#xff1a;单工作表 Excel 转 TXT 以下是将一个 Excel 文件中的第一个工作表转换为 TXT 的完整步骤&#xff1a; 1. 加载并读取Excel文件 from spire.xls import * from spire.xls.common import * workbook Workbook() workbook.LoadFromFile("示例.xlsx"…...

从像素到现实:5分钟搞懂OpenCV中的坐标系转换(附Python代码)

从像素到现实&#xff1a;5分钟搞懂OpenCV中的坐标系转换&#xff08;附Python代码&#xff09; 当你用手机拍下一张照片时&#xff0c;屏幕上那些彩色的像素点其实对应着现实世界中的三维物体。这种从二维图像到三维空间的映射关系&#xff0c;正是计算机视觉中最基础也最重要…...

SpringCloud进阶--Seata与分布式事务和

起因是我想在搞一些操作windows进程的事情时&#xff0c;老是需要右键以管理员身份运行&#xff0c;感觉很麻烦。就研究了一下怎么提权&#xff0c;顺手瞄了一眼Windows下用户态权限分配&#xff0c;然后也是感谢《深入解析Windows操作系统》这本书给我偷令牌的灵感吧&#xff…...

ADC0848嵌入式驱动开发:轮询与中断双模式实践

1. TI-ADC0848 驱动库深度解析&#xff1a;面向嵌入式工程师的底层实践指南TI ADC0848 是德州仪器推出的 8 位逐次逼近型&#xff08;SAR&#xff09;模数转换器&#xff0c;采用 28 引脚 DIP 封装&#xff0c;支持 4 通道单端或 2 通道差分输入&#xff0c;典型转换时间为 32 …...

mbino:Arduino上实现mbed HAL的轻量级嵌入式抽象层

1. 项目概述mbino 是一个面向 Arduino 平台的轻量级嵌入式抽象层移植库&#xff0c;其核心目标是将 mbed OS 2 的标准化硬件抽象 API&#xff08;Hardware Abstraction Layer, HAL&#xff09;无缝引入以 AVR 8-bit 微控制器&#xff08;如 ATmega328P、ATmega2560&#xff09;…...