#ruby-on-rails #activerecord #rails-activerecord
Вопрос:
Пытаюсь переписать этот код только более активно.
.where("external_id in(select external_id from bmp group by external_id having count(*) > 1)")
Комментарии:
1. Bmp.group(:external_id).наличие(«количество(*) >1»).выберите(:идентификатор) . Можете ли вы попробовать это
2. Почему бы просто не использовать ВНУТРЕННЕЕ СОЕДИНЕНИЕ? Каковы модели, таблицы и ожидаемый результат?
3.
.where(external_id: Bmp.select(:external_id).group(:external_id).having(Arel.star.count.gt(1)))
должно привести к этому точному условию (предполагаяBmp
, что это «модель»). Правильно это или нет для вашего варианта использования, действительно зависит от вас.4. Спасибо вам, ребята! @enginersmnky, твой ответ идеально подходит!