mysql组合查询:将查询出来的值作为表头,并统计类别数量
SELECTa.enterprise_name AS '事业部',sum( IF ( a.alarm_reason = '3', a.countt, 0 ) ) AS '正常操作',sum( IF ( a.alarm_reason = '4', a.countt, 0 ) ) AS '人员操作',sum(IF( a.alarm_reason = NULL, a.countt, 0 )) AS '其他'
FROM( SELECT enterprise_name, count( alarm_reason ) AS countt, alarm_reason FROM `alarm_record` WHERE enterprise_id IS NOT NULL GROUP BY alarm_reason ) a
GROUP BYa.enterprise_name