2017-02-04 110 views
-1

的刪除重複我有這樣的要求:從結果集中的ActiveRecord

res = Model1.joins(:items).where(items: {id: [1, 2, 3]}) 

它返回重複數據,雖然是在一個數據庫中沒有重複。如何從res刪除重複項?

回答

5

使用.uniq Rails中4和.distinct Rails中5:

res = Model1.joins(:items).where(items: {id: [1, 2, 3]}).uniq 
+1

鋼軌5,不同的是uniq的棄用。 –

+1

@PauloAbreu感謝您指出。將更新答案。 –

0

的SQL連接(使用joins)爲您提供了兩個表的產品。如果你想獲得Model1記錄中都涉及到具體Item記錄,然後用

Model1.where(item_id: [1, 2, 3])