SQL Server 2008 中 SUM() 中的多个 CASE 语句

Multiple CASE stamenet within SUM() in SQL Server 2008

我有一个查询,需要使用 CASE 语句再添加一个列检查。检查is_contractor = 0。检查意味着 AND 与列。

刚开始使用 CASE 没有帮助。所以任何帮助将不胜感激。

SELECT
    ft.profit_center_id,
    c.region,
    SUM(CASE cc.is_nurse_cc WHEN 1 THEN ft.number_of_fte ELSE 0 END) AS sum_number_of_fte_nurse
FROM dbo.Employee AS ft
    INNER JOIN dbo.Centers as cc ON ft.cc_id = cc.cc_id
    INNER JOIN dbo.Clinic c ON c.id = ft.profit_center_id
    GROUP BY
          ft.profit_center_id,
          c.region,

使用案例表达式的搜索版本(https://msdn.microsoft.com/en-us/library/ms181765.aspx):

SUM(CASE WHEN cc.is_nurse_cc = 1 AND is_contractor = 0 
    THEN ft.number_of_fte ELSE 0 END) AS sum_number_of_fte_nurse