SQL查询按天计算和分组小时和工资

时间:2014-08-07 21:58:04

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

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

但是我得到了故障而不是每天的总计。如果我不在查询中使用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.感谢任何建议!

1 个答案:

答案 0 :(得分:0)

像这样使用GROUP BY和SUM:

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