mysql写周报_mysql 数据分析如何实现日报、周报、月报和年报?
以天为统计周期,是常见需求。周报、月报更是常见需求。长周期项目,甚至有年报需求。我已经掌握了mysql中按天统计,如何实现按年、按月、按周统计呢?
1、已掌握的技能:按天统计
实现以天为统计周期很简单。具体来说,date() 函数可返回时间数据的日期,即仅有年月日,没有时分秒信息。结合 group by 可实现按天统计。
以天为统计周期的数据指标非常多,随便举例,比如每日新增注册用户数。
select
date(created_at) as 注册日期,
count(user_id) as 用户数
from
users
group by
注册日期
order by
注册日期
2、从已知推理,拓展技能
既然date()函数可用,那么是否有对应的 year、month、week 等函数可用呢?这纯属我的推理,那试试看吧。
果然可行。但美中不足的是,返回的周数和月数不带年份。当数据量跨年时,它会把每年相同周数或月数的数据加在一起。如何实现某年某月和某年某周呢?已有知识储备去推理,没找到答案,那就直接搜索吧!
3、搜索找答案
经过搜索和尝试发现,在mysql中用date_format(column_name,‘%Y-%m‘)来代替month()就能拿到年月值。
如果把其中代表月month的关键字m换成周week呢?试试看。分别尝试:
date_format(column_name,‘%Y-%w‘) 和 date_format(column_name,‘%Y-%W‘)。
数据返回结果不对呀?并不是预期的今年第几周。小写的w返回的是本周第几天,大写的W返回的是周几的英文名。如何拿到今年第几周这个值,实现周报的统计周期呢?
4、觉察知识点欠缺,查漏补缺
我自学编程时,很喜欢从已知去推理,拓展自己的技能。通常推理能带来惊喜,当推理不够用时,那就搜索大法好。搜索特定问题的答案时,通常也能发现某块知识不足。比如我这里我就意识到自己不熟悉表达日期的关键字或常用语法。
恰好搜索时遇到相濡以沫66的文章,里面有很好的整理。
MySQL日期格式化(format)取值范围。
?
值
秒
%S、%s
两位数字形式的秒( 00,01, ..., 59)
分
%I、%i
两位数字形式的分( 00,01, ..., 59)
小时
%H
24小时制,两位数形式小时(00,01, ...,23)
%h
12小时制,两位数形式小时(00,01, ...,12)
%k
24小时制,数形式小时(0,1, ...,23)
%l
12小时制,数形式小时(0,1, ...,12)
%T
24小时制,时间形式(HH:mm:ss)
%r
12小时制,时间形式(hh:mm:ss AM 或 PM)
%p
AM上午或PM下午
周
%W
一周中每一天的名称(Sunday,Monday, ...,Saturday)
%a
一周中每一天名称的缩写(Sun,Mon, ...,Sat)
%w
以数字形式标识周(0=Sunday,1=Monday, ...,6=Saturday)
%U
数字表示周数,星期天为周中第一天
%u
数字表示周数,星期一为周中第一天
天
%d
两位数字表示月中天数(01,02, ...,31)
%e
数字表示月中天数(1,2, ...,31)
%D
英文后缀表示月中天数(1st,2nd,3rd ...)
%j
以三位数字表示年中天数(001,002, ...,366)
月
%M
英文月名(January,February, ...,December)
%b
英文缩写月名(Jan,Feb, ...,Dec)
%m
两位数字表示月份(01,02, ...,12)
%c
数字表示月份(1,2, ...,12)
年
%Y
四位数字表示的年份(2015,2016...)
%y
两位数字表示的年份(15,16...)
文字输出
%文字
直接输出文字内容
把单个知识点,稍微提升到某块知识点,能让自己的知识技能再上一个台阶。
5、求助也是社交,问人附红包
上述表格相当实用,但依然没有解决如何获得“某年第几周”的需求。
虽然说主动检索找到答案,是很好的习惯。但自己耗费大量时间也没找到答案,又恰恰有目标相同的人一起互助,何不问问人看呢?学习么,本质上是个社交行为。在学一样技能时,我喜欢泡几个氛围好的学习群。经常在群里分享自己的心得笔记,也会主动力所能及地帮助别人,或者提出自己的疑问引发探讨。求助就是一种很好的社交行为啊。
此时我把疑问丢到编程学习群,并附上红包请教。经指点很快得到答案,用到了concat()函数来拼接。
方便大家拷贝学习,放一下代码吧:
select
concat(date_format(created_at,'%Y-'),week(created_at)) as 年周,
count(user_id) as 用户数
from
users
group by
年周
order by
年周
6、小结
总结一下,mysql中可通过date_format() 和 concat(),week()等函数可完成数据分析中常用的月报、周报中按月、周统计的需求。关键语句为:
date(column_name) as 年月日
date_format(column_name,‘%Y-%m‘) as 年月
concat(date_format(column_name,‘%Y-‘),week(column_name) as 年周
这篇笔记除了知识点,我也放了自己探索扩展技能的思路。是否对你有启发呢?如果有,记得留言或点赞告诉我,鼓励我多多分享。
特别申明:这篇笔记图中数据为本地数据库,仅供本人练习使用,并非任何产品网站的正式数据。
原文:https://www.cnblogs.com/jjliu/p/11731457.html
mysql写周报_mysql 数据分析如何实现日报、周报、月报和年报?相关推荐
- mysql 统计日报_mysql 数据分析如何实现日报、周报、月报和年报?
以天为统计周期,是常见需求.周报.月报更是常见需求.长周期项目,甚至有年报需求.我已经掌握了mysql中按天统计,如何实现按年.按月.按周统计呢? 1.已掌握的技能:按天统计 实现以天为统计周期很简单 ...
- mysql写缓冲_MySQL 数据库的提速器-写缓存(Change Buffer)
写缓存(Change Buffer) 是一种特殊的数据结构,用于在对数据变更时,如果数据所在的数据页没有在 buffer pool 中的话,在不影响数据一致性的前提下,InnoDB 引擎会将对数据的操 ...
- mysql 函数返回表格_mysql 数据分析如何实现日报、周报、月报和年报?
推荐阅读: MySQL复习:20道常见面试题(含答案)+21条MySQL性能调优经验 秋招Java面试大纲:Java+并发+spring+数据库+Redis+JVM+Netty等 以天为统计周期,是常 ...
- mysql周报内容范文_mysql 数据分析如何实现日报、周报、月报和年报?
以天为统计周期,是常见需求.周报.月报更是常见需求.长周期项目,甚至有年报需求.我已经掌握了mysql中按天统计,如何实现按年.按月.按周统计呢? 1.已掌握的技能:按天统计 实现以天为统计周期很简单 ...
- mysql数据分析统计表_mysql 数据分析如何实现日报、周报、月报和年报?
以天为统计周期,是常见需求.周报.月报更是常见需求.长周期项目,甚至有年报需求.我已经掌握了mysql中按天统计,如何实现按年.按月.按周统计呢? 1.已掌握的技能:按天统计 实现以天为统计周期很简单 ...
- mysql周报内容范文_Mysql报表查询实例(日报|周报|月报|时间差自动计算)
例子,mysql报表查询综合实例. 复制代码 代码示例: public List retrieve(IReport report) { List list = new ArrayList(); Map ...
- mysql 写备注_mysql怎么添加备注
具体方法: 1.创建表的时候,添加表名备注和字段备注CREATE TABLE `healerjean_comment` ( `id` bigint(20) NOT NULL AUTO_INCREMEN ...
- 数据字典怎么写_求职数据分析,项目经验该怎么写
项目经验是简历里最奇葩一部分.因为很多人,特别是新人,没做过啥正儿八经的项目,因此项目经验一栏常常被尴尬的空着.直到某一天,在神秘力量作用下,所有新人的项目经验变得整齐划一,仿佛韩国小姐选美现场.作为 ...
- 【转载】某牛逼的文章《曝光一下我开发的游戏项目的日报周报 》
以下是我最近几个月开发的<美人三国>游戏的一个大概过程.记录每天做了什么,开发了什么代码,等等. 就目前我所经历的这个项目,我学习到了很多东西.包括游戏的架构,游戏的业务开发.游戏的地图, ...
最新文章
- java 流的方式抓取网页 但是显示不全_用java抓取网页源代码时总是无法获取完整的源代码信息,求指导...
- 《LINUX3.0内核源代码分析》第一章:内存寻址
- 13_文件的操作模式
- 怎么通过打工,在一线城市购买10套房?Snapchat程序员亲身分享经历!
- 重磅!「肠道菌群」项目征集,百万科研经费助力细分领域全新突破
- How can ifm help the SME WELL?
- VTK:灯动画用法实战
- 深度 | 带领国产数据库走向世界,POLARDB底层逻辑是什么?
- html生成表格table
- 配置Apache2+PHP5+MYSQL5
- 公开课视频-《第01章 规划》-大企业云桌面部署实战-在线培训-视频(奉献)
- 三星 s9 android 9,美国V版三星S9/S9+迎来安卓9更新
- 关于Eclipse优化记录
- 蚂蚁森林自动收能量之AutoJs实现
- MMC,SD,TF各是什么
- 谷歌浏览器表格无法导入_如何从另一个Google表格导入数据
- 人工智能(1)-样本空间、假设空间、版本空间
- 论文阅读笔记:《Neural3D: Light-weight Neural Portrait Scanning via Context-aware Correspondence Learning》
- Gitee上传代码保姆级教程(亲测有效)
- 快速梳理23种常用的设计模式
热门文章
- [总结自用]关于Mbps、Mb/s、MB/s以及Mpps的区别及计算
- 顶级赛事|2021 CCF大数据与计算智能大赛重磅来袭!
- 第一章 Web MVC简介 —— 跟开涛学SpringMVC 博客分类: 跟开涛学SpringMVC webmvcjavaeespring跟开涛学SpringMVC Web MVC简介 1.1、We
- freesurfer对结构核磁共振成像分割输出结果介绍
- 欲善其事,先利其器——青龙面板依赖安装教程
- 妖魔复苏:天师下山!开局传承天师度(二)
- 使用spark.streaming.kafka.consumer.poll.ms和reconnect.backoff.ms解决spark streaming消费kafka时任务不稳定的问题
- 全球与中国网络连接视频门铃对讲机市场深度研究分析报告
- 祭 事 本
- m4a录音文件损坏修复_m4a录音文件怎么打开 - 卡饭网