MongoDB
 sql >> Baza danych >  >> NoSQL >> MongoDB

Jak znaleźć podpole w Mongo bez znajomości pola nadrzędnego?

To zapytanie agregujące może to zrobić:

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. Czy mogę wysłać zapytanie MongoDB ObjectId według daty?

  2. Odpytywanie zlokalizowanych danych w MongoDB

  3. Pomieszanie dwóch równoczesnych żądań w aplikacji Node.js

  4. Jednostki używane dla maxdistance i MongoDB?

  5. MapReduce z MongoDB naprawdę, bardzo wolno (30 godzin vs 20 minut w MySQL dla równoważnej bazy danych)