Я создаю плагин Rails, который извлекает много данных из приложений Rails.Он строит запросы динамически, которые охватывают несколько таблиц, и будет возвращено много результатов.Вот пример одного из запросов, созданных для извлечения данных покупки из Spree (корзина покупок Rails):
select orders.user_id as from_id, variants.product_id as to_id from orders, line_items, variants where orders.user_id is not null and variants.product_id is not null and orders.id = line_items.order_id and line_items.variant_id = variants.id order by from_id;
Проблема в том, что ActiveRecord загружает все результаты в память.Есть ли способ избежать этого, не переходя к написанию специфичного для БД кода?(Я знаю о find_each, но это не позволяет сортировать.)