mysql获取唯一日期的总和

时间:2015-01-03 07:24:02

标签: mysql sql select aggregate-functions mysql-error-1064

从MySQL表中我有基于日期的列表金额。我需要得到每个日期的金额总和:

前:

id  type    date    amount  
1   1   2015-01-01  100
2   1   2015-01-01  150
3   1   2015-01-02  10
4   1   2015-01-03  250

此处2015-01-01不止一次出现。

所以我需要像

这样的结果
date    amount  
2015-01-01  200
2015-01-02  10
2015-01-03  250

我的查询在本周开始和结束之间进行

 SELECT * from mytable WHERE YEARWEEK(`date`) = YEARWEEK(CURRENT_DATE) AND `type` = 1 ORDER BY `date` ASC 

3 个答案:

答案 0 :(得分:3)

您需要group by子句:

SELECT   `date`, SUM(amount)
FROM     mytable
GROUP BY `date`

答案 1 :(得分:2)

我认为结果应该是

date    amount  
2015-01-01  250
2015-01-02  10
2015-01-03  250

您可以使用此mysql查询来获得该结果:

Select date, sum(amount) as amount 
from mytable 
GROUP BY date
ORDER BY date asc

别忘了添加" ORDER BY"如果你想让结果井然有序

答案 2 :(得分:1)

使用 GROUP BY

使用 AS 子句更改列名称

SELECT   `date`, SUM(amount) AS amount 
FROM     mytable
GROUP BY `date`