根据SQL Server中的条件进行计数

有人知道如何根据条件在SQL Server中进行计数。

例:

如何为名称为“系统”的记录列列数,表中的总数为多少的记录?

客户表

userid     caseid     name
1          100        alan
1          101        alan
1          102        amy
1          103        system
1          104        ken
1          105        ken
1          106        system  

结果将显示如下:

UseeID    TotalcaseID    TotalRecordsWithSystem
1         7              2
使用SUM / CASE …

SELECT
    COUNT(*),  --total
    SUM(CASE WHEN name = 'system' THEN 1 ELSE 0 END) --conditional
FROM
    myTable

转载注明原文:根据SQL Server中的条件进行计数 - 代码日志