2013-06-29 42 views
10

我有一個像下面SQL COUNTIF函數

Type of Station | Broadcast Management 
----------------+------------------------- 
Full Power  | Sinclair Broadcast Group 
Full Power  | Sinclair Broadcast Group 
LPTV cable  | Sinclair Broadcast Group 
LPTV no cable | Sinclair Broadcast Group 

現在我想執行一個查詢,會帶來結果的表看起來像下面

Broadcast Management  | Full Power | LPTV cable | LPTV no cable 
---------------------------+------------+------------+-------------- 
Sinclair Broadcast Group | 2   |  1  | 1 

誰能請幫助我如何寫這個查詢

回答

21

沒有單一SUMIFCOUNTIF

但你必須SUMCOUNT和使用CASEIF ...

SELECT 
    [Broadcast Management], 
    SUM(CASE WHEN [Type of Station] = 'Full Power' THEN 1 ELSE 0 END) AS [Full Power], 
    SUM(CASE WHEN [Type of Station] = 'LPTV Cable' THEN 1 ELSE 0 END) AS [LPTV Cable], 
    SUM(CASE WHEN [Type of Station] = 'LPTV No Cable' THEN 1 ELSE 0 END) AS [LPTV No Cable] 
FROM 
    yourTable 
GROUP BY 
    [Broadcast Management] 

對於計數,可以使ELSENULL1, 2, 4, NULL計數3

+0

優秀。謝謝@MatBailie –