使用find_by_sql来删除记录

时间:2009-04-23 11:28:31

标签: ruby-on-rails

我正在尝试删除表'abc'中的少数记录,其中id是从'xyz'表中提取的

SQL:

delete from abc where id in (select ids from xyz where i= 10)

此查询我想使用find_by_sql执行以避免多次点击数据库。

这是错误的。请帮我完成一次点击DB中的删除操作。

1 个答案:

答案 0 :(得分:2)

我认为find_by_sql不是您想要的方法。

如果你有

class Abc < ActiveRecord::Base
end

(所以abc.rb是你的模特)然后我认为你应该可以这样做:

Abc.connection.execute('delete from abc where id in (select ids from xyz where i= 10)')