代码之家  ›  专栏  ›  技术社区  ›  sameera207

如何编写一个SQL查询来求每天的总和?

  •  0
  • sameera207  · 技术社区  · 14 年前

    请帮助我编写以下SQL。我有一张这样的表格,上面有金额栏和日期栏

    amount     date
    -----------------------
    100    -    2010-02-05
    200    -    2010-02-05
    50     -    2010-02-06
    10     -    2010-02-06
    10        2010-02-07
    

    我想写一个SQL来获取每天的总计。最终,我的查询应该返回如下内容

    amount     date
    -----------------
    300  -     2010-02-05
    60   -     2010-02-06
    10   -     2010-02-07
    

    请注意,现在它已按日期分组,并且该日期的金额已求和。

    解决-

    这是我的错,尽管我在这里提到日期列作为日期,但Postgres表中的实际日期列是“timestamp”。一旦我把它改成只知道日期,一切都开始工作了。

    我的工作SQL类似于“选择总和(金额)、日期(日期)”。 从票据 按日期分组(日期) “

    谢谢大家(我接受第一个答案作为正确答案,因为我只能接受一个答案)

    再次感谢

    萨梅拉

    4 回复  |  直到 10 年前
        1
  •  3
  •   Dustin Laine    14 年前

    相当基本 group by 语句。

    SELECT SUM(table.amount), table.date
    FROM table
    GROUP BY table.date
    

    http://www.w3schools.com/sql/sql_groupby.asp

        2
  •  2
  •   Mike M.    14 年前

    观察 GROUPING 按日期,在这里: http://www.w3schools.com/sql/sql_groupby.asp

    并查看 SUM() ,这里: http://www.w3schools.com/sql/sql_func_sum.asp

    您需要同时使用这两种方法。

        3
  •  2
  •   Abe Miessler    14 年前

    试试这个:

    SELECT SUM(Amount), Date FROM Table
    GROUP BY Date
    
        4
  •  0
  •   Sergey Eremin    14 年前
    SELECT SUM(amount) as amount_sum, date FROM table GROUP BY date;