2016-01-25 237 views
-9

你好有一個表像之下,我想算我每個管理地址有Linux和Windows服務器的數量,一個人怎麼能做到這一點: enter image description here計數SQL查詢

+5

好吧,你用'count'標記了你的問題,所以你知道你可以搜索什麼。它沒有比這更直接 – Lamak

+0

聽起來像你想要一個「GROUP BY」表達式。什麼是管理地址?那是'UCSM'嗎? –

回答

0

其中任何一個都可以。第二個更好,但第一個會告訴你,如果分組不是那麼直截了當(或可實現),你可以怎麼做。

SELECT 
    ISNULL(SUM(CASE WHEN OS_NAME = 'Linux' THEN 1 ELSE 0 END), 0) AS [Linux Servers], 
    ISNULL(SUM(CASE WHEN OS_NAME = 'Windows' THEN 1 ELSE 0 END), 0) AS [Windows Servers] 
FROM YourTable 

SELECT OS_NAME, COUNT(*) 
FROM YourTable 
GROUP BY OS_NAME 
0

這將工作:

SELECT UCSM, OS_NAME, COUNT(*) 
FROM TABLE 
GROUP BY OS_NAME, UCSM