【SQL】sql統計不同類別的不同狀態的數目


例子:某主機下有5149個設備,設備分不同類別,設備運行會有不同狀態(1-正常、2-告警、3-故障、0-離線)

sql:

SELECT t.DEVICE_TYPE_NAME,
SUM(CASE t.DEVICE_STATUS WHEN '1' THEN 1 ELSE 0 END) AS '正常',
SUM(CASE t.DEVICE_STATUS WHEN '3' THEN 1 ELSE 0 END) AS '故障',
SUM(CASE t.DEVICE_STATUS WHEN '0' THEN 1 ELSE 0 END) AS '離線',
SUM(CASE t.DEVICE_STATUS WHEN '2' THEN 1 ELSE 0 END) AS '告警'
FROM(SELECT * FROM `device_info` WHERE FIRE_SYSTEM_ID=1 and CATEGORY_ID=2 and DELETED=0 AND DIST_ID=5) t
GROUP BY t.DEVICE_TYPE_NAME

查詢結果:

 

頁面效果:

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM