2010-07-28 443 views
1

我有一个'timestamp'列和一个'值'列,其中的值大致相隔3秒。MySQL:每小时平均值

我想返回一个具有日常平均值的表。

所以,这样的事情就是我要找的东西。

| timestamp | average | 

| 2010-06-02 | 456.6 | 

| 2010-06-03 | 589.4 | 

| 2010-06-04 | 268.5 | 

etc... 

对此的任何帮助将不胜感激。

回答

5
SELECT DATE(timestamp), AVG(value) 
FROM table 
GROUP BY DATE(timestamp) 

既然你想要的日子,而不是每个时间戳

1

这假定您的时间戳列仅包含有关当天的信息,但不包含时间。这样一来,日期可以组合在一起:

select timestamp, AVG(value) as average 
from TABLE_NAME 
group by timestamp 
+1

我不认为他实际上已经在这样大的增量离散值时间戳字段。我猜他还需要处理这个领域,忽略这个小时。 – AlexanderMP 2010-07-28 15:52:16

+0

是的,你可能是对的。我会留下答案,因为你的信息可能对某人有用。 – 2010-07-28 15:56:15

2
select DATE(timestamp), AVG(value) 
from TABLE 
group by DATE(timestamp)