需要一個繩索;))取上一例的外觀:計數記錄由組0的編號爲記錄了標準
我有一個表:
CREATE TABLE [dbo].[test3](
[software] [varchar](50) NOT NULL,
[result] [bit] NOT NULL,
[computername] [varchar](50) NOT NULL
)
隨着數據:
INSERT INTO test3 VALUES ('Adobe',1,'abc')
INSERT INTO test3 VALUES ('Office',1,'abc')
INSERT INTO test3 VALUES ('Adobe',0,'def')
INSERT INTO test3 VALUES ('Office',1,'def')
所以經過普通SELECT我們:
software result computername
Office 1 abc
Adobe 1 abc
Office 1 123
Adobe 0 123
現在,我的問題。我想按軟件組統計軟件數量。 「結果」列表示:0未安裝,1已安裝。
要計算所有已安裝的(結果= 1),我可以做簡單:
SELECT
Software
,COUNT(*) as Quantity
FROM
test3
WHERE
result = 1
GROUP BY
software
,但如果我要「反向」的結果,並指望有多少臺計算機從表中還沒有安裝的軟件(結果= 0 )我不會看到我需要的結果(用於報告)。
之後:
SELECT
Software
,COUNT(*) as Quantity
FROM
test3
WHERE
result = 0
GROUP BY
software
我會得到:
Software Quantity
-------------------------------------------------- -----------
Adobe 1
這意味着: 「只有1 Adobe正在錯過了和其他軟件的安裝無處不在」。
但我需要的報告類似的東西很好看:
Software Quantity
-------------------------------------------------- -----------
Adobe 1
Office 0
這意味着,)「只有1安裝的Adobe錯過和0 Office安裝錯過。」
我堅持與:/ PLZ幫助:)
您需要存儲每個軟件的許可證數量,我建議在單獨的表格中進行。 – 2009-11-27 22:25:56
在正常情況下,當然。但是那只是掃描日誌的報告,並沒有用於其他任何領域。 – binball 2009-11-27 23:04:28