SELECT
t1.单位ID, DatePart(mm, t1.时间) 月份,
SUM(CASE 检查结果 WHEN '无隐患' THEN 1 ELSE 0 END) 无隐患数,
SUM(CASE 检查结果 WHEN '有隐患' THEN 1 ELSE 0 END) 有隐患数,
SUM(CASE 检查结果 WHEN '暂停作业' THEN 1 ELSE 0 END) 暂停作业数
FROM 数据表 t1
JOIN 单位表 t2
ON t1.单位ID = t2.单位ID
GROUP BY t1.单位ID, DatePart(mm, t1.时间)