mergeはmergeでもHashじゃなくてActiveRecord::SpawnMethodsのmergeなのです。 join先のテーブルの条件で絞り込みたい class Entry < ActiveRecord::Base has_many :comments end class Comment < ActiveRecord::Base belongs_to :entry end 例えばブログのエントリーの公開・非公開がいつでも切り替えられるとして、非公開になっているブログのコメントを抽出したいな、と思ったとします。 公開・非公開かはentriesテーブルのpublished_atカラムにDateTimeがセットされているかされていないかで分かるとすると、以下のようなコードになると思います。 Comment.joins(:entry).where(entries: { publishe