首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在mysql中获取按月计算的周平均值?

问如何在mysql中获取按月计算的周平均值?
EN

Stack Overflow用户
提问于 2012-03-21 04:52:03
回答 2查看 4.2K关注 0票数 0

我在一个表中有日,月,年,值列,这里我需要得到一个月内每周的平均值。如何做到这一点。关于这一点,请帮助我。

代码语言:javascript
复制
select avg(value) from table group by month 

给出月平均值。

代码语言:javascript
复制
select avg(value) from table group by day

给出日平均值。但是如何从月份字段中获取周平均值。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-03-21 05:32:10

你不能“从一个月中得到几周”,因为其中一个不是另一个的子集。

一个月中的天数(以及相应的周)因月而异,并且只有在非闰年中-并且仅在2月份-一个月中恰好有4周。

您应该使用原始日期字段,并使用日期函数按周限制/分组数据。

在mySQL中度过一周

WEEK(timestamp)

或

YEARWEEK(timestamp)

或

WEEKOFYEAR(NOW())

或

DATE_FORMAT($yourDate, \'%X %V\') as week

票数 2
EN

Stack Overflow用户

发布于 2012-03-21 04:55:42

也许有一种更好的方法,但我的第一个想法是编写一个查询,计算每一天是一年中的第几周,并对它们进行分组。http://dev.mysql.com/doc/refman/5.5/en/date-and-time-functions.html#function_weekofyear

类似于:

代码语言:javascript
复制
SELECT avg(value) FROM table GROUP BY WEEKOFYEAR(CONCAT(year, '-', month, '-', day))
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9794734

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档