ホームページ >データベース >mysql チュートリアル >Rails 4 で LEFT OUTER JOIN を使用して、特定の学生が登録していないコースを検索するにはどうすればよいですか?
Rails 4 での LEFT OUTER JOIN
Rails では、LEFT OUTER JOIN を利用して、データがすべてのテーブルに存在しません。
あなたのシナリオでは、関連付けられていないコースを取得したいと考えています。特定の生徒と。提供された SQL クエリは、Rails 4 のアクティブ レコードを使用して実装できます。
Course.joins("LEFT JOIN student_enrollments ON courses.id = student_enrollments.course_id") .where("student_enrollments.id IS NULL AND student_enrollments.student_id = ?", SOME_STUDENT_ID_VALUE) .where(active: true)
文字列を渡す代替構文を使用して、結合を使用して結合条件を指定することに注意してください。さらに、わかりやすくするために、Rails 標準のテーブル命名規則が採用されています。このクエリは、特定の学生が登録していないコースを取得します。
以上がRails 4 で LEFT OUTER JOIN を使用して、特定の学生が登録していないコースを検索するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。