ホームページ >データベース >mysql チュートリアル >Rails 4 で LEFT OUTER JOIN を使用して、特定の学生が登録していないコースを検索するにはどうすればよいですか?

Rails 4 で LEFT OUTER JOIN を使用して、特定の学生が登録していないコースを検索するにはどうすればよいですか?

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2025-01-04 02:51:38402ブラウズ

How Can I Use LEFT OUTER JOIN in Rails 4 to Find Courses Not Enrolled by a Specific Student?

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 サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。