【问题标题】:MS SQL Server 2005 GROUP BY and SUMMS SQL Server 2005 GROUP BY 和 SUM
【发布时间】:2011-04-18 22:02:05
【问题描述】:

大家好,我正在尝试创建一个报告来显示每个 HRCode 花费了多少。到目前为止,这是我的 SQL 查询:

 SELECT *
 FROM   tblWO as WO, 
        tblWOD as WOD, 
        tblWA as WA 
 WHERE WOD.OrderID = WO.ID 
 AND WA.HRCode  = WO.AdministratorCode 
 AND WO.OrderDate BETWEEN '2010-01-01' AND '2010-08-31' 
 AND Approved = '1' 
 ORDER BY WO.OrderDate

我正在尝试找出一种方法,将所有相同的 HRCode 混合在一起,然后每个 SUM()...但是我的大脑今天不工作,所以我需要一些帮助 :o)

这是数据库数据的样子:

ID      Total   OrderDate               Approved    HRCode    AdministratorCode    OrderID
3272      25.00   2010-01-04 10:48:57.617 1           RN        RN                   3272
4621      25.00   2010-02-04 11:15:01.600 1           RN        RN                   4621
4899      50.00   2010-02-04 11:55:01.630 1           02        02                   4899
4905      15.00   2010-05-04 11:55:01.190 1           NR        NR                   4905
5001      50.00   2010-06-04 04:11:55.295 1           RN        RN                   5001

任何帮助都会很棒!谢谢!

已解决

 SELECT SUM(Total) as Total, AdministratorCode 
 FROM   tblWO as WO, 
        tblWOD as WOD
 WHERE WOD.OrderID = WO.ID 
 AND WO.OrderDate BETWEEN '2010-01-01' AND '2010-08-31' 
 AND Approved = '1' 
 ORDER BY WO.AdministratorCode

大卫

【问题讨论】:

    标签: sql sql-server-2005 mysql


    【解决方案1】:

    从您的选择语句中删除 OrderDate 和 ID 列:

     SELECT SUM(Total) as Total, HRCode
     FROM   tblWO as WO,  
            tblWOD as WOD,  
            tblWA as WA  
     WHERE WOD.OrderID = WO.ID  
     AND WA.HRCode  = WO.AdministratorCode  
     AND WO.OrderDate BETWEEN '2010-01-01' AND '2010-08-31'  
     AND Approved = '1'  
     GROUP BY HRCode
    

    【讨论】:

    • 另外,我希望显示所有表格,而不仅仅是总和 HRCode?​​span>
    • 您还想显示哪些其他表格?你是说列吗?如果您使用您正在寻找的输出示例来编辑您的问题,这将有所帮助。
    • 抱歉,专栏。我想要添加到“总计”列中的所有数据。我尝试将 SUM(Total) 作为 Total, HRCode, * 但它不起作用
    • 但这很可能不会为您总结任何内容,因为我假设 ID 和日期都是唯一的。如果您也按 ID 和日期分组,您将获得每个订单和日期的 HR 值的总和。
    • Gotcha,.. 但 SUM 似乎确实搞砸了,因为值 11884250.00 与它应该的值不匹配。 (比那个少很多)
    猜你喜欢
    • 2014-05-06
    • 2017-08-08
    • 1970-01-01
    • 2011-05-18
    • 2020-01-19
    • 1970-01-01
    • 2012-09-18
    • 1970-01-01
    • 2021-11-06
    相关资源
    最近更新 更多