如何使用Rails3.0将表与包含聚合函数的子查询连接起来



我有一个StockPrice表,它包含一个时间戳(时间)、一个股票代码(符号)和一些其他属性a、b、c等

在SQL中,我会写以下内容:

Select * 
FROM stock_prices, (SELECT symbol, max(time) as max_time
                    FROM stock_prices
                    GROUP BY symbol) latest_prices
WHERE stock_prices.symbol = latest_prices.symbol
AND stock_prices.time = latest_prices.max_time

我想使用rails 3.0 ActiveRecord query来表达这个查询,比如select、from、group等等。我该怎么做?

虽然混合使用Rails方法和SQL片段可以做到这一点,但这可能会变得很混乱。直接执行这样的复杂查询通常要简单得多。

查看find_by_sql方法,以便在模型的上下文中执行此操作:http://api.rubyonrails.org/classes/ActiveRecord/Base.html#method-c-find_by_sql

相关内容

  • 没有找到相关文章

最新更新