LEFT OUTER JOIN dengan Rails 4
Dalam Rails, anda boleh menggunakan LEFT OUTER JOIN untuk mendapatkan maklumat daripada berbilang jadual, walaupun data tidak wujud dalam semua jadual.
Dalam senario anda, anda ingin mendapatkan semula kursus yang tidak dikaitkan dengan pelajar tertentu. Pertanyaan SQL yang disediakan boleh dilaksanakan menggunakan Rekod Aktif 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)
Perhatikan penggunaan cantuman untuk menentukan syarat cantuman, menggunakan sintaks alternatif untuk menghantar rentetan. Selain itu, konvensyen penamaan jadual standard Rails telah digunakan untuk kejelasan. Pertanyaan ini akan mengambil kursus yang tidak didaftarkan oleh pelajar tertentu.
Atas ialah kandungan terperinci Bagaimana Saya Boleh Menggunakan LEFT OUTER JOIN dalam Rails 4 untuk Mencari Kursus yang Tidak Didaftarkan oleh Pelajar Tertentu?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!