2010-03-12 76 views
1

我有用戶表:組由國家與Rails的ActiveRecords

name | country | 
.. | UK  | 
.. | US  | 
.. | US  | 
.. | UK  | 
.. | FR  | 
.. | FR  | 
.. | UK  | 
.. | UK  | 
.. | DE  | 
.. | DE  | 
.. | UK  | 
.. | CA  | 
. 
. 

什麼是ActiveRecord的最有效的方式來獲得在我看來和每個國家的國家名單中有多少用戶是從,所以:

US 123 
UK 54 
DE 33 
. 
. 
. 

回答

4

執行以下操作:

counts = Users.count(:group => :country) 

現在打印計數:

counts.each |country, count| do 
p "#{country} - #{count}" 
end 

# Prints 
US 123 
UK 54 
DE 33 

counts["UK"] #-> prints 123 
+0

counts.each do | country,count |它適用於我。謝謝。 – Adnan 2010-03-12 12:18:26