web-dev-qa-db-ja.com

2つのActiveRecordクエリ結果を組み合わせる

現在、2つのアクティブレコードクエリを組み合わせたいと思っています

 joins( "join Relationships ON user_id = follow_id")。
 where( "follower_id =#{user.id}")

そして

 where(:user_id => user.id)

基本的に、2番目の結果をSQLのUNIONステートメントと同様の最初の結果とともに表示する必要があります。この方法でActiveRecordで実行できますか?

文字列内のすべてのfollowed_idを結合し、SQLでIN句を使用する必要があるのではなく、和集合を使用したいと思います。

何か案は?

-----編集------遅延読み込みでこれを機能させる方法を探しています

22
zzawaideh

使用する relation & relation

Model.joins("join relationships ON user_id = followed_id").where("follower_id = {user.id}") & Model.where(:user_id => user.id)
12
fantactuka

これは私にとって役に立ちました:

Model.where(...) | Model.where(...)
30