如何用JOINS和SUM()从现有SQL数据生成缺陷统计结果?
SQL Server 数据聚合转换实现方案
针对你的需求,不需要复杂的JOIN操作,用条件聚合就能快速得到目标结果:
SELECT UID_MOTRIP, SUM(CASE WHEN INT_SEVERITY = 2 THEN CountQ1 ELSE 0 END) AS RegularDefectsCount, SUM(CASE WHEN INT_SEVERITY = 4 THEN CountQ1 ELSE 0 END) AS HotDefectsCount FROM 你的原始表名 GROUP BY UID_MOTRIP;
代码说明
- 按
UID_MOTRIP分组,确保每个行程ID只返回一行结果 - 通过
CASE WHEN筛选对应严重程度的记录,用SUM汇总CountQ1的值:- 当
INT_SEVERITY=2(常规缺陷)时,累加对应的CountQ1,否则加0 - 当
INT_SEVERITY=4(热缺陷)时,累加对应的CountQ1,否则加0
- 当
内容的提问来源于stack exchange,提问作者John D
相关产品推荐
相关产品推荐

