【发布时间】:2014-10-12 12:25:15
【问题描述】:
我在我的 Rails 应用程序中定义了一个视图,遵循guide
所以,目前我有这个课程:
class GoldenResult < ActiveRecord::Base
scope :latest_builds, -> { select('MAX(id) as id').group(:platform_id, :release_id, :configuration_id) }
end
我想执行以下连接:
SELECT * FROM performance_dev.report_golden_results e
join (SELECT max(id) as 'id'
from performance_dev.report_golden_results
group by platform_id, release_id, configuration_id) s
ON s.id = e.id;
问题是我不知道如何访问 ON 连接变量(即ON s.id = e.id)
创建此查询的常规方法是什么?
谢谢!
【问题讨论】:
-
我认为一种 SQL 方式是使用 union(或 intersect?)。 Rails 的 ActiveRecord 是基于
arel构建的,所以这可能有帮助,但不确定:radar.oreilly.com/2014/05/more-than-enough-arel.html
标签: mysql ruby-on-rails activerecord ruby-on-rails-4