【问题标题】:SQL query to sum and group hours and wages by daySQL查询按天汇总和分组小时和工资
【发布时间】:2014-08-08 09:27:21
【问题描述】:

对不起,这似乎是一个简单的查询,但我坚持下去。我正在尝试从按员工 ID 分组的 Totals 表中获取每日工作时间和工资。该表有TimeinSeconds、WageAmount、EmpID、位置等信息。 我正在使用这个: 选择 EmpID、Loc、Sum(timeinseconds/3600.0) 作为 Hours、Paydate、wageamt 来自总计 其中 loc = 'locID' 和 paycode IN (paycodenames) 和日期 > (getdate()-21) 按 EmpID、Loc、日期、工资分组

但我得到的是细分,而不是 Emp 的每日总计。如果我不在查询中使用 wageamt,它会起作用。那么,我怎样才能同时计算工时和工资呢?

 EmpID  Loc Hours       Paydate     wageamt        

 112        7   0.733333    08/06/14    14.666667   
 112        7   2.533333    08/06/14    50.666667   
 112        7   4           08/06/14    80  
 112        7   1.25        08/07/14    25  
 112        7   4           08/07/14    80  
 200       81   3.983333    08/06/14    31.866667   
 450      703   3.733333    08/06/14    108.789333  

我正在使用 SQL 2008。感谢您的任何建议!

【问题讨论】:

    标签: sql-server-2008 group-by sum


    【解决方案1】:

    像这样使用 GROUP BY 和 SUM:

    select 
         EmpID
        ,Loc
        ,sum(Hours)   as Hours
        ,PayDate
        ,sum(WageAmt) as WageAmt
    from DataTable
    group by
         EmpID
        ,Loc
        ,PayDate
    

    【讨论】:

    • @user3271831:唯一真正的感谢是赞成和接受。
    猜你喜欢
    • 2016-08-27
    • 2021-06-02
    • 1970-01-01
    • 2021-07-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-07-27
    • 1970-01-01
    相关资源
    最近更新 更多