SQL查询来做到这一点

时间:2018-11-12 15:32:39

标签: sql sql-server

我对SQL还是很陌生,但是很难做到这一点。 我从供应商处获得了详细的发票明细,我正在尝试通过以下方式设置格式:

**Account Name  |  Date  |  Cost**
ABC Company  |  2018-01-01  |  $2.60
ABC Company  |  2018-01-02  |  $3.10
ABC Company  |  2018-01-03  |  $0.90
ABC Company  |  2018-01-04  |  $1.42
DEF Company  |  2018-01-01  |  $2.19
DEF Company  |  2018-01-02  |  $8.10
DEF Company  |  2018-01-03  |  $2.91
DEF Company  |  2018-01-04  |  $4.19
FGH Company  |  2018-01-01  |  $1.10
FGH Company  |  2018-01-02  |  $9.10
FGH Company  |  2018-01-03  |  $3.48
FGH Company  |  2018-01-04  |  $1.91

我当前的发票摘要(已加载到SQL中)每天每个帐户有数百个项目。

SO而不是这样做,我想导出每个帐户和每一天的费用,以及该帐户和每一天的费用之和

当前表的格式类似于:

ABC Company |  2018-01-01  |  $0.60
ABC Company |  2018-01-01  |  $0.75
ABC Company |  2018-01-01  |  $1.00
ABC Company |  2018-01-01  |  $0.25
ABC Company |  2018-01-02  |  $3.00
ABC Company |  2018-01-02  |  $0.07
ABC Company |  2018-01-02  |  $0.03
ABC Company |  2018-01-03  |  $0.40
ABC Company |  2018-01-03  |  $0.50

希望是有意义的;我不确定该怎么做。

1 个答案:

答案 0 :(得分:1)

您可以使用GROUP BY子句为每个日期和公司创建一行,然后使用SUM来获取成本总和。我不知道您实际的列/表名称是什么,也不知道您使用的是哪个DBMS,但这是一个基本的演示:

SELECT
    [Account Name], 
    Date,
    Cost = SUM(cost)
FROM
    invoices
GROUP BY
    [Account Name], Date