2017-10-12 27 views
-4

我有這樣如何查找使用mysql計數的平均值?

 
    +-------------+-------+ 
    | countryCode | label | 
    +-------------+-------+ 
    | KM   | A  | 
    +-------------+-------+ 
    | AD   | A  | 
    +-------------+-------+ 
    | TH   | B  | 
    +-------------+-------+ 
    | KM   | B  | 
    +-------------+-------+ 

數據如何才能找到平均計數這樣

 
    +-------------+-----+-----+-------+ 
    | countryCode | A | B | count | 
    +-------------+-----+-----+-------+ 
    | KM   | 0.5 | 0.5 | 2  | 
    +-------------+-----+-----+-------+ 
    | AD   | 1 | 0 | 1  | 
    +-------------+-----+-----+-------+ 
    | TH   | 0 | 1 | 1  | 
    +-------------+-----+-----+-------+ 
+0

*你認爲什麼?你嘗試過什麼嗎? – Rafael

+0

我嘗試了很多東西子查詢加入仍然沒有得到我想要的結果 –

+0

我不明白算術 – Strawberry

回答

0

在這裏你去。

SELECT countrycode 
    , COALESCE(SUM(CASE WHEN label = 'A' THEN 1 END)/COUNT(*),0) a 
    FROM my_table 
GROUP 
    BY countrycode; 

你可以算出其餘的。

+0

它的作品,但我怎麼找到總數? –

+0

' SELECT \t COUNTRYCODE, \t COALESCE(SUM(CASE WHEN標記= 'A' THEN 1 END)/ COUNT(*),0)A, \t COALESCE(SUM(CASE WHEN標記= 'B' THEN 1 END)/ COUNT(*),0)B, \t COUNT(countryCode)as count FROM my_table ' –

+0

終於得到了它的工作感謝 –