SQL SUM ON DISTINCT CURRENCIES

时间:2018-03-17 09:01:19

标签: mysql sql

我有2个SQL表

首先是费用表

id  |  currency_id  |  amount  |  Date
1   |            1  |     500  |  02/02/2017
2   |            1  |     200  |  02/02/2017
3   |            2  |     600  |  03/02/2017
4   |            1  |     400  |  03/02/2017

其次是货币表

id  |  name
1   |  USD
2   |  INR

我希望查询输出为金额的总和,并按货币区分。例如

name  |  amount  | Date
USD   |     700  | 02/02/2017
INR   |     600  | 03/02/2017
USD   |     400  | 03/02/2017

我已经从stackoverflow和sql文档中探索了很多查询,但找不到任何给我这个结果的查询。我已经应用了SUM,DISTINCT和GROUP BY的多种组合,但它们没有给出任何结果。

1 个答案:

答案 0 :(得分:1)

您只需要将GROUP BY条款应用于聚合SUM()

SELECT c.name, sum(e.amount) amount, e.Date 
FROM expenses e
INNER JOIN currencies c ON c.id = e.currency_id   
GROUP BY c.name, e.Date