Em SQL:
select * from messages group by year(created_at), month(created_at);
Nos trilhos:
Message.all.group_by { |m| m.created_at.beginning_of_month }
select * from messages group by year(created_at), month(created_at);
Message.all.group_by { |m| m.created_at.beginning_of_month }