月平均金额

oxiaedzo  于 2021-07-26  发布在  Java
关注(0)|答案(2)|浏览(378)

我有一个带有“amount”和“date”列的表,我想按月份显示平均值。
表如下所示:

amount | date |  
100 | 2017-04-22 20:39:24 |  
300 | 2017-04-25 16:14:08 |  
200 | 2017-04-28 17:51:16 |  
100 | 2017-05-29 05:46:42 |  
100 | 2017-05-08 16:15:13 |  
100 | 2017-05-09 22:06:45 |  
400 | 2017-06-10 10:57:34 |  
500 | 2017-06-11 15:57:14 |    
900 | 2017-06-14 16:02:36 |

这就是我所拥有的:

SELECT AVG(amount) AS avg_amount, date  
FROM table  
GROUP BY date

它按天显示平均值,因此它最终看起来与第一个表完全相同,但没有小时/分钟/秒部分,而我希望它看起来像这样:

avg_amount | date |  
200 | April |  
100 | May |  
600 | June |
eblbsuwk

eblbsuwk1#

GROUP BY MONTH(date)

查看mysql或postgresql extract函数中的日期和时间函数。

jfgube3f

jfgube3f2#

我喜欢托维迪乌的回答,但只有在你有一年的数据的情况下,这才有效。我建议

SELECT AVG(amount) AS avg_amount, date  
FROM table  
GROUP BY YEAR(date), MONTH(date)

相关问题