Rails 응용 프로그램에서 한 테이블을 다른 테이블의 명명 된 범위로 조인하려고합니다. 내 조인 문의 순수한 SQL에서 명명 된 범위를 다시 작성하지 않고이 작업을 수행 할 수있는 방법이 있습니까?명명 된 범위를 Rails에서 서브 쿼리로 사용
기본적으로 이와 같은 방법이 있습니까?
가 Bar.joins는 다음과 같은 SQL 생성class Foo < ActiveRecord::Base
scope :updated_today, where('updated_at > ?', DateTime.now.prev_day)
end
Bar.joins(Foo.updated_today)
:
SELECT * FROM bars
INNER JOIN
(SELECT * FROM foos WHERE updated_at > 2012-8-9) AS t0
ON bar_id = bars.id
예, 저는 제 질문에 대답했습니다. 누구든지이 일을하는 더 좋은 방법이 있다면 언제든지 전화 해주십시오. – Ajedi32
특히 남은 사람들이 그렇게 할 수 없을 때 자신의 질문에 완벽하게 대답 할 수 있습니다. :) – BaronVonBraun