MongoDB
 sql >> Base de données >  >> NoSQL >> MongoDB

Spring Data Mongo - Comment obtenir le tableau distinct imbriqué pour la valeur imbriquée?

Vous pouvez obtenir des technologies distinctes (technology éléments de tableau) avec cette agrégation :

db.depts.aggregate( [
  {
       $unwind: "$departments.subdepts"
  },
  {
       $unwind: "$departments.subdepts.technology"
  },
  {
       $match: { "departments.subdepts.subdeptCd": "1D" }
  },
  {
       $group: { _id: "$departments.subdepts.technology.technologyCd", tech: { $first: "$departments.subdepts.technology" } }
  },
  {
      $replaceRoot: { newRoot: "$tech" }
  }
] )