2012-02-21 30 views
1
SELECT user_id, investments, expenditures 
FROM (SELECT user_id, SUM(amount) investments 
      FROM transactions 
      where beneficiary_id is not null 
      group by user_id) A JOIN (SELECT beneficiary_id, SUM(amount) expenditures 
             FROM transactions 
               where beneficiary_id is not null 
               group by beneficiary_id) B 
ON  A.user_id = B.beneficiary_id" 

使用find方法可以使用哪種最佳方式來編寫活動記錄方法?這裏的想法是使用更少的SQL和更多的軌道活動記錄方法。我知道這可以用find_by_sql來實現,但是尋找更多的方法來實現這一點。Rails ActiveRecord查詢 - 在模型中實現查詢的最佳方式

交易是具有以下結構

txndate模型:日期時間 USER_ID:整數 beneficiary_id:整數 量:小數,:精密=> 14:刻度=> 2

任何幫助將不勝感激。

回答