MongoDB
 sql >> Cơ Sở Dữ Liệu >  >> NoSQL >> MongoDB

MongoDB thêm vào trường bộ sưu tập tham gia từ cơ sở một

Trước tiên, bạn cần $unwind questions mảng và sau đó cần áp dụng $lookup và cuối cùng sử dụng $group để khôi phục lại vào mảng.

db.games.aggregate([
  { "$unwind": "$questions" },
  { "$lookup": {
    "from": "questions",
    "localField": "questions.question_id",
    "foreignField": "_id",
    "as": "question_data"
  }},
  { "$unwind": "$question_data" },
  { "$addFields": {
    "question_data.position": "$questions.position",
    "question_data.question_id": "$questions.question_id"
  }},
  { "$group": {
    "_id": "$_id",
    "questions": { "$push": "$questions" },
    "question_data": { "$push": "$question_data" }
  }}
])



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Định hình lại tài liệu MongoDB

  2. MongoDB Aggregations Sử dụng Java

  3. MongoParseError:các tùy chọn useCreateIndex, useFindAndModify không được hỗ trợ

  4. Điền các ngày còn thiếu trong hồ sơ

  5. Cách truy cập MongoDB