использование find_by_sql для удаления записи - PullRequest
1 голос
/ 23 апреля 2009

Я пытаюсь удалить несколько записей из таблицы 'abc', где id выбирается из таблицы 'xyz'

SQL:

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

этот запрос я хочу выполнить, используя find_by_sql, чтобы избежать нескольких попаданий в базу данных.

Это дает ошибку. Помогите, пожалуйста, выполнить это действие удаления одним нажатием на БД.

1 Ответ

2 голосов
/ 23 апреля 2009

Я не думаю, что 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)')
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...