比如下面这种学生选课的模型,既要知道学生选了哪些课,又要知道课被哪些学生选了。传统的 SQL 就是下面这写法了,如果换成 key-value 的,该怎么描述呢?
Student: Id Name Course: Id Name Relation: Student_Id Course_Id
闭关修行中......
Ia boleh direka bentuk seperti ini Setiap dokumen dalam koleksi menyimpan data pemilihan kursus pelajar:
// students { _id: ObjectId('4e7020cb7cac81af7136236b'), name: "...", choose_lesson: [ {_id:ObjectId('4e7020cb7cac81af71362361'), lesson_name: "..." }, {_id:ObjectId('4e7020cb7cac81af71362362'), lesson_name: "..." } ] }
Apakah kursus yang dipilih oleh pelajar?
db.students.find( {_id: ObjectId('4e7020cb7cac81af7136236b')}, {choose_lesson: 1} )
Apakah pilihan pelajar untuk kursus?
db.students.find( {choose_lesson: {$elemMatch: {lesson_name: "..."}}}, {name: 1} )
Dengan merujuk kepada mongodb, bagaimana untuk mereka bentuk pengguna seperti fungsi dengan lebih munasabah?
Dalam perniagaan ini, saya rasa ia adalah sama.
Simpan Id Pelajar dan Id Kursus secara langsung dalam Hubungan, atau gunakan DBRefs. Secara peribadi, saya fikir yang pertama baik-baik saja. Sila rujuk: http://docs.mongodb.org/manual/reference/database-references/.
Ia boleh direka bentuk seperti ini Setiap dokumen dalam koleksi menyimpan data pemilihan kursus pelajar:
Apakah kursus yang dipilih oleh pelajar?
Apakah pilihan pelajar untuk kursus?
Dengan merujuk kepada mongodb, bagaimana untuk mereka bentuk pengguna seperti fungsi dengan lebih munasabah?
Dalam perniagaan ini, saya rasa ia adalah sama.
Simpan Id Pelajar dan Id Kursus secara langsung dalam Hubungan, atau gunakan DBRefs. Secara peribadi, saya fikir yang pertama baik-baik saja. Sila rujuk: http://docs.mongodb.org/manual/reference/database-references/.