MySQL根据数据库字段进行按天、按月、按年分组统计查询

今天在数据库取数的时候发现MySQL中的时间字段是一串数字,然后返回的JSON数据中也是一串数字,这对后期做数据分析和数据可视化来说很不友好。由于不懂怎么处理,然后就开始询问度娘。终于功夫不负有心人,在经历了九九八十一次失败后,终于找到了解决方法。下面简单记录一下,用作源码库个人收藏备用。

图片[1]-MySQL根据数据库字段进行按天、按月、按年分组统计查询-源码库

MySQL根据数据库字段进行按天、按月、按年分组统计查询函数代码:

1、如果时间字段类型为date或datetime:

//按周查询
SELECT DATE_FORMAT(create_time,'%Y%u') weeks,COUNT(id) COUNT FROM role GROUP BY weeks;
//按天查询
SELECT DATE_FORMAT(create_time,'%Y%m%d') days,COUNT(id) COUNT FROM role GROUP BY days;
//按月查询
SELECT DATE_FORMAT(create_time,'%Y%m') months,COUNT(id) COUNT FROM role GROUP BY months

2、如果时间字段为时间戳(timestamp)或int表示的时间戳:

//按周查询
SELECT FROM_UNIXTIME(create_time,'%Y%u') weeks,COUNT(id) COUNT FROM role GROUP BY weeks;
//按天查询
SELECT FROM_UNIXTIME(create_time,'%Y%m%d') days,COUNT(id) COUNT FROM role GROUP BY days;
//按月查询
SELECT FROM_UNIXTIME(create_time,'%Y%m') months,COUNT(id) COUNT FROM role GROUP BY months

备注:里面的日期和时间格式可以根据自己的需求调整为:'%Y%u'   '%Y-%m-%d %H:00:00'   '%Y-%m-%d'   '%Y/%m/%d'

 

© 版权声明
1:本网站名称:源码库
2:本站永久网址:www.ymkuz.com
3:本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长!
4:分享目的仅供大家学习和交流,您必须在下载后24小时内删除!
5:本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
6:本站资源售价只是赞助,收取费用仅维持本站的日常运营所需!
7:如有链接无法下载、失效或广告,请联系管理员处理!
8:文章投稿-投诉建议E-mail:yunduanw@qq.com 站长QQ:99767152
THE END
点赞6068 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容