2012-07-25 56 views
0

我需要一個報告,列中有不同值的計數,按日期分組,每個日期有一個輸出行。如何獲得同一行上不同值的計數?

表格列是日期,位置ID(var)和評分(var)。評分只能有四個值中的一個,'A','B','C'或空/空白。我可以用此選擇每個日期的每個值獲得一行,但是如何獲得同一行上所有四個值的計數,對於每個日期?

SELECT date, rating, count(rating) AS ratings 
FROM table 
GROUP BY date, rating 

回答

2

使用SUM用布爾如下:

SELECT 
    date, 
    SUM(rating = 'A') AS count_A, 
    SUM(rating = 'B') AS count_B, 
    SUM(rating = 'C') AS count_C, 
    SUM(rating = '' OR rating IS NULL) AS count_blank 
FROM yourtable 
GROUP BY date 
相關問題