我想将ActiveRecord接口用于项目。我在Ruby中有一个函数,称之为“get_val”。目前,我有
Object.find_by_sql("SELECT SUM(miles * gas * tires * get_val) AS calculation FROM table")
我想把它变成ActiveRecord格式,但我不认为我可以在'select'函数中使用聚合函数,而且我不确定如何正确使用'calculate'函数。
另外,我想添加多个where子句,所以我的后续问题是:我可以将Rails中的ActiveRecord函数串起来并让它作为单个SQL查询执行吗?特别是,如果我愿意,可以将'find_by_sql'和'where'串在一起吗?
注意:我正在开发一个旧的应用程序,因此我正在使用Rails 3,以防万一ActiveRecord语法发生了巨大的变化。
答案 0 :(得分:2)
您可以选择(http://api.rubyonrails.org/classes/ActiveRecord/QueryMethods.html#method-i-select):
Object.select("SUM(miles * gas * tires * get_val) AS calculation")
但不是find_by_sql。