MySql-日期分组

news2024/11/18 15:46:48

一、分别统计各时间各类型数据条数

数据库的 request_time字段

数据类型:timestamp

默认值:CURRENT_TIMESTAMP

例子: 2024-01-26 08:25:48 

原数据:

1、将数据按照日期(年月日)形式输出

按照request_time字段分组以(年月日形式)输出

   SELECT
            DATE(request_time) AS date,
            SUM(CASE WHEN task_command_value = 1 THEN 1 ELSE 0 END) AS count_1
            SUM(CASE WHEN task_command_value = 2 THEN 1 ELSE 0 END) AS count_2,
            SUM(CASE WHEN task_command_value = 3 THEN 1 ELSE 0 END) AS count_3,
            SUM(CASE WHEN task_command_value = 4 THEN 1 ELSE 0 END) AS count_4,
            SUM(CASE WHEN task_command_value = 5 THEN 1 ELSE 0 END) AS count_5
        FROM `数据库名`.表名
        GROUP BY DATE(request_time)
        ORDER BY DATE(request_time) DESC

输出结果:

2、将数据按照每月(月)形式输出

SELECT
    MONTH(request_time) AS date,
    SUM(CASE WHEN task_command_value = 1 THEN 1 ELSE 0 END) AS count_1,
    SUM(CASE WHEN task_command_value = 2 THEN 1 ELSE 0 END) AS count_2,
    SUM(CASE WHEN task_command_value = 3 THEN 1 ELSE 0 END) AS count_3,
    SUM(CASE WHEN task_command_value = 4 THEN 1 ELSE 0 END) AS count_4,
    SUM(CASE WHEN task_command_value = 5 THEN 1 ELSE 0 END) AS count_5
FROM `数据库名`.表名
GROUP BY MONTH(request_time)
ORDER BY MONTH(request_time) DESC

输出结果:缺点是如果两年的同月数据无法区别

3、将数据按照年月形式输出(使用DATE_Format函数)

SELECT
    DATE_FORMAT(request_time,'%y-%m') AS date,
    SUM(CASE WHEN task_command_value = 1 THEN 1 ELSE 0 END) AS count_1,
    SUM(CASE WHEN task_command_value = 2 THEN 1 ELSE 0 END) AS count_2,
    SUM(CASE WHEN task_command_value = 3 THEN 1 ELSE 0 END) AS count_3,
    SUM(CASE WHEN task_command_value = 4 THEN 1 ELSE 0 END) AS count_4,
    SUM(CASE WHEN task_command_value = 5 THEN 1 ELSE 0 END) AS count_5
FROM `数据库名`.表名
GROUP BY DATE_FORMAT(request_time,'%y-%m')
ORDER BY DATE_FORMAT(request_time,'%y-%m') DESC

输出结果:

二、分别统计各时间各类型数据总值

数据库的 date字段

数据类型:date

例子: 2024-04-09

原数据:

1、将数据按月汇总输出

SELECT
    DATE_FORMAT(date,'%y-%m') as date,
    SUM(everyday_1_bill) AS num1,
    SUM(everyday_2_bill) AS num2,
    SUM(everyday_3_bill) AS num3,
    Sum(everyday_4_bill) AS num4,
    SUM(everyday_5_count) AS num5,
    SUM(everyday_6_count) AS num6,
    SUM(everyday_7_count) AS num7,
    SUM(everyday_8_count) AS num8
FROM `数据库名`.数据库表名
GROUP BY DATE_FORMAT(date,'%y-%m')

输出结果:

2、将数据按周汇总输出(%U是周)

SELECT
    DATE_FORMAT(date,'%y-%m %U') as date,
    SUM(everyday_1_bill) AS num1,
    SUM(everyday_2_bill) AS num2,
    SUM(everyday_3_bill) AS num3,
    Sum(everyday_4_bill) AS num4,
    SUM(everyday_5_count) AS num5,
    SUM(everyday_6_count) AS num6,
    SUM(everyday_7_count) AS num7,
    SUM(everyday_8_count) AS num8
FROM `数据库名`.数据库表名
GROUP BY DATE_FORMAT(date,'%y-%m %U')

输出结果:

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

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

相关文章

C语言:文件操作(下)

片头 嗨!小伙伴们,在前2篇中,我们分别讲述了C语言:文件操作(上)和 C语言:文件操作(中),今天我们将会学习文件操作(下),准…

电商技术揭秘四十一:电商平台的营销系统浅析

相关系列文章 电商技术揭秘相关系列文章合集(1) 电商技术揭秘相关系列文章合集(2) 电商技术揭秘相关系列文章合集(3) 文章目录 引言一、用户画像与精准营销用户画像与精准营销的概念用户画像在精准营销中…

基于FPGA的数字信号处理(7)--如何确定Verilog表达式的位宽

一般规则 很多时候,Verilog中表达式的位宽都是被隐式确定的,即使你自己设计了位宽,它也是根据规则先确定位宽后,再扩展到你的设计位宽,这常常会导致结果产生意想不到的错误。比如: timescale 1ns/1ns mod…

Docker命令(持续更新)

目录 下载和安装 安装必要的依赖项 添加Docker仓库 安装Docker Engine 启动Docker服务 配置阿里云镜像 卸载Docker 镜像 删除指定id镜像 删除所有镜像 镜像保存本地 本地镜像加载到docker服务器内 容器 创建容器 查看所有容器 停止所有容器 启动已存在容器 删…

从键入网址到网页显示,期间发生了什么?

从键入网址到网页显示,期间发生了什么? 孤单小弟【HTTP】真实地址查询【DNS】指南帮手【协议栈】可靠传输【TCP】远程定位【IP】两点传输【MAC】出口【网卡】送别者【交换机】出境大门【路由器】互相扒皮【服务器与客户端】相关问答 不少小伙伴在面试过程…

【千帆平台】AppBuilder工作流编排新功能体验之创建自定义组件

欢迎来到《小5讲堂》 这是《千帆平台》系列文章,每篇文章将以博主理解的角度展开讲解。 温馨提示:博主能力有限,理解水平有限,若有不对之处望指正! 目录 前言工作流编排组件 创建组件组件界面组件信息 组件画布操作节点…

Liunx发布tomcat项目

Liunx在Tomcat发布JavaWeb项目 1.问题2.下载JDK3.下载Tomcat4.Tomcat本地JavaWeb项目打war包、解压、发布5.重启Tomcat,查看项目 1.问题 1.JDK 与 Tomcat 版本需匹配,否则页面不能正确显示 报错相关:Caused by: java.lang.ClassNotFoundException: java…

Tag文件与Tag标记

一、Tag文件 Tag文件与JSP文件很类似,可以被JSP页面动态加载调用,实现代码的复用,但用户不能通过该Tag文件所在Web服务目录直接访问Tag文件 1、文件结构 Tag文件是扩展名为.tag的文本文件,其结构和JSP文件类似。一个Tag文件中可…

十一、大模型-Semantic Kernel与 LangChain 的对比

Semantic Kernel 与 LangChain 的对比 Semantic Kernel 和 LangChain 都是用于开发基于大型语言模型(LLM)的应用程序的框架,但它们各有特点和优势。 基本概念和目标 Semantic Kernel 是一个由微软开发的轻量级 SDK,旨在帮助开发…

nginx版本号隐藏

隐藏Nginx版本号的主要作用是增强服务器的安全性。当Nginx的版本号被隐藏时,攻击者就难以利用已知的漏洞来攻击特定版本的软件,因为他们无法确切知道服务器上运行的Nginx版本。这样可以降低攻击者对系统的了解,增加攻击的复杂性,从…

【大模型系列】大模型的上下文长度解释与拓展

文章目录 1 什么是大模型的上下文长度?2 拓展大模型上下文长度的方式参考资料 1 什么是大模型的上下文长度? 大模型的上下文长度(Context Length)是指在自然语言处理(NLP)的大型语言模型(Large…

《QT实用小工具·四十四》支持图片和动图的文本编辑器

1、概述 源码放在文章末尾 该项目实现了一个功能丰富的文本编辑器,除了包含文本常规的编辑功能,还包括图片的插入功能和动图的插入功能,项目demo演示如下所示: 项目部分代码如下所示: #include "imagehelper.…

【Linux网络编程】DNS、ICMP、NAT技术、代理服务器+网络通信各层协议总结

DNS、ICMP、NAT技术、代理服务器网络通信总结 1.DNS2.ICMP协议2.1ping命令2.2traceroute命令 3.NAT技术4.NAT和代理服务器5.网线通信各层协议总结 点赞👍👍收藏🌟🌟关注💖💖 你的支持是对我最大的鼓励&…

第七篇:专家级指南:Python异常处理的艺术与策略

专家级指南:Python异常处理的艺术与策略 1 引言 在编程的世界中,异常处理是一门必修的艺术。它不仅涉及到程序的错误处理,更广泛地影响着软件的稳定性、健壮性和用户体验。本篇文章将深入探讨Python中的异常处理,展示如何通过精心…

瘦身秘籍:如何使用 PyInstaller 打造超小型 Python 可执行文件

你是否曾经尝试过将你的 Python 程序打包成一个可执行文件,却发现生成的文件大得惊人?别担心,本文将教你如何使用 PyInstaller 尽可能减小生成的 onefile 大小,让你的程序轻盈如风! 1. 使用虚拟环境 首先&#xff0c…

边循环边删除List中的数据

List边循环,边删除;这种一听感觉就像是会出问题一样,其实只要是删除特定数据,就不会出问题,你如果直接循环删除所有数据,那可能就会出问题了,比如: public static void main(String[…

基于RK1126的小型化低功耗AI相机,支持人体特征识别、人脸特征识别、案例帽识别等

提供可定制的⼀套 AI相机软硬件开发平台, 硬件采⽤ RockchipRV1126处理器解决 ⽅案,可选择搭配 SonyIMX系列传感器,POE供电与数据传输,采⽤ 38板标准结构设计,快速按需定制外壳,⽀撑从开发到验证到批量⽣产…

Redis集群模式:高可用性与性能的完美结合!

【更多精彩内容,欢迎关注小米的微信公众号“软件求生”】 大家好,我是小米,一个积极活泼、喜好分享技术的29岁程序员。今天我们来聊聊Redis的集群模式,以及它是如何实现高可用的。 什么是Redis集群模式? Redis的集群模式是为了避免单一节点负载过高导致不稳定的一种解决…

Windows之隐藏特殊文件夹(自定义快捷桌面程序)

作者主页:点击! 创作时间:2024年5月1日12点55分 祝大家劳动节快乐~ Windows中的特殊文件夹是指一些预定义的文件夹,用于存储特定类型的数据或文件。这些文件夹通常由操作系统或应用程序使用,但用户也可以访问和管理它…

java序列化和反序列化基础学习

一、前言 前文分析了java的反序列化的DNSURL利用链,但是对于java反序列化的一些过程不是很了解,这篇主要记录下学习java反序列基础知识 二、原理 概念 1、什么是序列化和反序列化 (1)Java序列化是指把Java对象转换为字节序列…