В частности, я пытаюсь выяснить, возможно ли сгенерировать SQL, который выполняет то, что я хочу передать в метод find_by_sql Ruby-on-Rails.
Представьте, что есть пользователи, которые объединяются циклическидругим пользователям за объединительным столомКаждый пользователь имеет возможность создавать комментарии.
Я бы хотел, чтобы SQL-запрос возвращал последние 100 комментариев, созданных любыми друзьями данного пользователя, чтобы я мог отобразить их все в одном удобном для пользователя месте.см.
Это сложно, так как по сути я хочу отфильтровать комментарии по тому, содержатся ли их внешние ключи для их автора в наборе ключей, полученных из первичных ключей друзей пользователя.
Редактировать: Уточнение настроек.Я не совсем уверен, как написать определение схемы, поэтому я опишу его в терминах Rails.
class User
has_many :friends, :through => :friendships
has_many :comments
end
class Friendship
belongs_to :user
belongs_to :friend, :class_name => "User", :foreign_key => "friend_id"
end
def Comment
has_one :User
end