Active Recordで以下のようにcountを実行しても、複数列の値が取得できません。 Message.count(:group => "rcv_user_id, send_user_id") =>[[ 3, 2] , [ 4, 2]] ※一番最後に指定した列の値+行数 このような場合には、countを使わず、通常のfindを使用します。 Message.find(:all , :select => "count(*) count, rcv_user_id, send_user_id":group => "rcv_user_id, send_user_id") 結果をオブジェクト(インスタンス)から取得するときにも、countやメソッド名で取得できるので、ソースの可読性が良くなります。 もう、count使わないほうが良いカナと思ってしまいます。
![ruby on rails (Active Record)複数列をgroup by して countする方法 - ruby on rails ビジネスの可能性](https://cdn-ak-scissors.b.st-hatena.com/image/square/62016cb5f0b39869e24932eebaa02dfd043efd6d/height=288;version=1;width=512/http%3A%2F%2Fmileage-techno.cocolog-nifty.com%2F.shared-pleasy%2Fnifty_managed%2Fimages%2Fweb%2Fogp%2Fdefault.png)