Sql server 查询所有行和特定行的总和

Sql server 查询所有行和特定行的总和,sql-server,Sql Server,请指导我对以下场景进行查询- 数据: Date Product Result Total 15/01/2015 ABC Pass 5 15/01/2015 XYZ Pass 8 15/01/2015 MNO Fail 2 23/01/2015 ABC Pass 10 23/01/2015 XYZ Fail 3 我需要以下格式的结果: Date Total

请指导我对以下场景进行查询- 数据

Date        Product  Result  Total
15/01/2015  ABC      Pass     5 
15/01/2015  XYZ      Pass     8 
15/01/2015  MNO      Fail     2 
23/01/2015  ABC      Pass    10 
23/01/2015  XYZ      Fail     3 
我需要以下格式的结果:

Date        Total  Pass  Fail 
15/01/2015  15     13    2 
23/01/2015  13     10    3 

使用条件聚合

select Date  
       sum(Total) Total,
       SUM(case when Result  ='Pass' then Total else 0 end) Pass,
       SUM(case when Result  ='Fail' then Total else 0 end) Fail
From yourtable
Group by Date 

使用
PIVOT
尝试此操作


您错过了列之间的逗号。感谢您的快速帮助
SELECT Date, 
      sum(pass) + sum(fail) AS Total, 
      sum(pass) AS Pass, 
      sum(fail) AS Fail 
FROM TableName
PIVOT (SUM(Total) FOR Result in (pass, fail)) AS P
GROUP BY Date