我需要合并两行具有相同人员代码但发布时间不同的行,然后添加小时数。
现在我得到以下结果:
STAFFCODE EXPTOTAL
------------------
CON 6
CON 8
AEA 4
ECC 3
ECC 2
我想看到的是:
STAFFCODE EXPTOTAL
------------------
CON 14
AEA 4
ECC 5
我的结果是逗号形式,因为它们需要以这种方式更新
StaffCode,Exptotal
所以我的结果应如下所示:
CON, 14
AEA, 4
ECC, 5
到目前为止我的代码如下:
select staffreference + ',' + '3' + ',' + 'MSC' + ',' +
convert(varchar,convert(decimal(8,2),exptotal)) + ',' + ','
from tblstaff s
inner join tblExpenseHeader h on h.ExpStaff = s.StaffIndex
where ExpApprovedOn> 'aug 25 2015'
答案 0 :(得分:1)
您需要按员工参考进行分组,并对项目总结进行总结。修改原始查询,请尝试以下操作。
select staffreference + ',' + cast(sum(exptotal) as nvarchar(max))
from tblstaff s
inner join tblExpenseHeader h on h.ExpStaff = s.StaffIndex
where ExpApprovedOn > 'aug 25 2015'
group by staffreference