Я пытаюсь выполнить запрос, подобный следующему, используя ActiveRecord и Rails 3:
select count(*), * from messages group by thread_id
Я пытаюсь создать почтовый ящик простой системы многопоточных сообщений.Смысл этого запроса состоит в том, чтобы свернуть все объекты Message только до самого последнего для каждого потока и также получить размер потока.
В качестве альтернативы, я мог бы просто получить все верхние сообщения в потоке (простоудаление счетчика (*)), а затем выполнить подсчет как отдельный запрос для группы сообщений, но это кажется ужасно неэффективным.
У кого-нибудь есть идеи?Есть ли способ сделать это в ActiveRecord?