9

「各」ループでレコードごとに削除せずに、Rakeタスクからそのようなクエリをデータベースサーバーに送信する方法は?

delete from data
where uuid in (
    select uuid
    from data
    group by uuid, raw, recdate
    having count(*)>1
);
4

1 に答える 1

9

ActiveRecord にはそのdelete_all方法があります。destroy コールバックを呼び出さないことに注意してください。http://api.rubyonrails.org/classes/ActiveRecord/Relation.html#method-i-delete_all

于 2012-05-15T11:57:33.293 に答える