Tác giả câu hỏi cần đọc về cách sử dụng Rails cơ bản và activerecord trước khi chuyển sang SQL. Cần hiểu cách Activerecord lập mô hình dữ liệu của bạn và cách sử dụng nó. Trước tiên, hãy tìm ra những gì bạn muốn làm bằng ngôn ngữ phổ biến và sau đó xem cách bạn có thể sử dụng những gì hiện có để làm điều đó.
Rails không biết cấu trúc của bảng @temp của bạn. Nó chỉ có một tập kết quả và từ những gì tôi hiểu, AREL không xây dựng logic từ tập kết quả. Nó xây dựng từ các lược đồ mà nó kéo cho các mô hình bản ghi đang hoạt động.
Bạn không thể tạo chế độ xem từ dữ liệu này, vì vậy tùy chọn duy nhất của bạn là sử dụng các tùy chọn kết hợp tiêu chuẩn với các lớp ghi hoạt động hoặc thực hiện sql tùy chỉnh.
Trong Rails 3, đại số quan hệ ActiveRecord rất nâng cao và đã thực hiện các truy vấn rất dễ dàng.
Comment.order("#{Comment.table_name}.created_at desc').limit(5).joins(:posts).order("#{Post.table_name} created_at desc")