I have three tables/models. Recordings (id) has_many :hits has_many :tags, :through => :hits Hits (id, recording_id, tag_id) belongs_to :recordings belongs_to :tags Tags (id) has_many :hits has_many :recordings, :through => :hits I need to find all recordings that have all the tags that are passed in as a parameter. For example, find all recordings that have tag.id == 5, tag.id == 6, and tag.id ==