MongoDB
 sql >> база данни >  >> NoSQL >> MongoDB

Mongodb събира три колекции

Можете да опитате по-долу заявката за агрегиране.

Заявката по-долу избутва sections в department когато са присъединени и $group да накара отдела да създаде окончателната структура.

db.college.aggregate([
  {
    "$match": {
      "university_id": "5834ecf7432d92675bde9d82"
    }
  },
  {
    "$lookup": {
      "localField": "_id",
      "from": "departments",
      "foreignField": "college_id",
      "as": "departments"
    }
  },
  {
   "$unwind": {
     "path": "$departments",
     "preserveNullAndEmptyArrays": true
    }
  },
  {
    "$lookup": {
      "localField": "departments._id",
      "from": "sections",
      "foreignField": "department_id",
      "as": "departments.sections"
    }
  },
  {
    "$group": {
      "_id": "$_id",
      "name": {
        "$first": "$name"
      },
      "university_id": {
        "$first": "$university_id"
      },
      "departments": {
        "$push": "$departments"
      }
    }
  }
])



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Управлявайте Python Multiprocessing с MongoDB

  2. MapReduce в PyMongo

  3. Как да филтрирам, за да върна подмножество от схема на mongoose?

  4. Запитване за масиви от вложени обекти

  5. MongoDB проекция на вложени масиви