我有一個像計數的比例,然後按MSQL
ID Name
1 ABC
1 DEF
1 VVV
1 BBB
1 BCD
2 ZZZ
2 BAA
3 AAA
3 BBB
3 BBC
表我想所有以開始所有通過ID與B組開頭的名稱名稱的比率。
所以輸出應該是
ID Ratio
1 0.5
2 0
3 0.33
。
SELECT (ID, (SELECT COUNT(*) FROM `table` WHERE name LIKE 'A%')/
(SELECT COUNT(*) FROM `table` WHERE name LIKE 'B%')) AS `ratio` from table Group by ID
不給我正確的答案。它考慮所有ID中A/B的總比例,併爲所有ID寫入該數字。
嘗試COUNT(DISTINCT ID)??? –
對不起。 COUNT的意思是什麼(DISTINCT ID – Ank
用COUNT(DISTINCT ID)替換查詢中的COUNT(*))如果你試圖獲得A和B的不同ID –