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

Как да намерите подполе в Mongo, без да знаете родителското поле?

Тази заявка за агрегиране може да направи това:

var loved_by_mom = "Loved by mom";

db.loved.aggregate( [
        { $addFields: { fieldNameValues: { $objectToArray: "$$ROOT" } } },
        { $unwind: "$fieldNameValues" },
        { $addFields: { fldType: { $type: "$fieldNameValues.v" } } },
        { $match: { fldType: "object" } },
        { $addFields: { objs: { $objectToArray: "$fieldNameValues.v" } } },
        { $unwind: "$objs" },
        { $match: { "objs.k": loved_by_mom } }, 
        { $project: { fieldNameValues: 0, fldType: 0, objs: 0 } }
] )


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Как да получите дължината на курсора от mongodb с помощта на python?

  2. MongoDB - Рамка за агрегиране (Общ брой)

  3. Как да използвате Aggregate в mongoose

  4. Заявка за последната стойност на масива

  5. MongoDB - Обща сума