2014-01-30 51 views
1

從表中我需要選擇2列,並按一列分組。選擇2列並按組計數

Result.select(:word_id, :my_url).group(:my_url).count 

所以我寫了這條線,但輸出是:

[...] "https://www.url.com/"=>2 [...] 

,我需要它是:

["https://www.url.com/", 243]=>1 

我會:my_url and :word_id得到這個輸出只有當我組但我不知道:my_url有多少次被複制。

我該如何解決這個問題?

回答

0

我想你正在嘗試通過使用一行來做兩件不同的事情。並基於這是不可能的。 group by:my_url正在計算它被複制的次數,而不用擔心:正在被選中的word_id(從數據庫中拉出的AKA)。你可以這樣做:

result = Result.select(:my_url, :word_id) 

然後用,你可以做兩件不同的事情:

result.group(:my_url).count 
result.count 

另一種選擇是有可能重新措辭你的問題你爲什麼需要這樣的配置可能更容易幫助您。