使用Rails 4,紅寶石2其他重複的記錄中,MySQL如何找到在ActiveRecord的比原來
我想找到所有在我的數據庫,該數據庫是另一個記錄的重複記錄 - 但不是原來的記錄本身。
這樣我就可以update_attributes(:duplicate => true)
在這些記錄中的每一個上,並且保留原始的一個不被標記爲重複。
你可以說我正在尋找與Uniq
相反的*我不想要Uniq值,我希望所有的值都不是uniq之後的事實。我不希望所有具有重複的值都包含原始值。
我不介意爲此使用純SQL或Ruby,但我寧願使用活動記錄來保留Railsy。
讓我們說這個表被稱爲「Leads」,我們正在尋找那些字段「telephone_number」是相同的。我會單獨留下記錄1並將2,3和4標記爲重複=真。
*
如果我想UNIQ相反我可以做類似Find keep duplicates in Ruby hashes
b = a.group_by { |h| h[:telephone_number] }.values.select { |a| a.size > 1 }.flatten
但是,這是所有記錄,我希望所有的比原來的我比較它的其他的複製者至。
你打算刪除這些重複?因爲肯定有SQL在刪除重複 – mmcrae 2014-10-17 17:19:44
不,我保留它們。 – LpLrich 2014-10-17 17:22:23