2

データベースにテーブル (table1) の ID の配列があるとします。別のテーブル (table2) にクエリを実行して、列が table1 の ID の 1 つに等しい値と等しいすべてのレコードを選択する方法はありますか。

これまでの私のコードは次のとおりです。

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

このコードでは、ブランドのすべての製品にリンクされているすべてのラボの質問を取得しようとしています。このコードは機能しませんが、私のニーズを実証しようとしました。

4

2 に答える 2

1

以下のように、結合の代わりにインクルードを使用できます

LabQuestion.includes(:product).where(:products => { :brand_id => brand_id })
于 2013-07-16T14:54:58.620 に答える