ruby-on-rails-3 - Ruby on Rails : Select from database where column equals a value from array

标签 ruby-on-rails-3 activerecord

如果我有数据库中表 (table1) 中的 ID 数组。有没有办法查询另一个表(表2)来选择所有记录,其中某一列的值等于表1中的ID之一。

到目前为止我的代码是:

LabQuestion.where("product_id=#{Product.where(:brand_id => brand_id).pluck(:id)}")

在此代码中,我尝试检索与某个品牌的所有产品链接的所有实验室问题。该代码不起作用,但我已尝试证明我的需求。

最佳答案

假设您已正确设置关系,则可以使用 joins连接两个表并像这样查询它们:

LabQuestion.joins(:product).where(:products => { :brand_id => brand_id })

关于ruby-on-rails-3 - Ruby on Rails : Select from database where column equals a value from array,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17679541/

相关文章:

php - Codeigniter 子查询 Activerecord

sql - Rails ActiveRecord where 子句

ruby-on-rails - 等待 The Rails 3 Way 或任何其他类似的书?

ruby-on-rails - database.yml 代理?或等效的?

mysql - SQL 查询中的时间周期问题。

ruby-on-rails - 为什么在我调用合并时 ActiveRelation 返回一个数组?

mysql - Rails - 在组、用户、所有者、成员协会方面遇到困难

ruby-on-rails-3 - 设置为:deploy_via, :remote_cache not working set :keep_releases, 5

ruby-on-rails - 运行 Rails 服务器时找不到 gem 'rails (= 4.2.5) x86-mingw32'

ruby-on-rails-3 - 我可以将这个 Rails 计算插入数据库吗?