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

Заявка за масив от вложени документи за най-висока стойност на полето

Можете също да опитате модерен подход - рамка за агрегиране :

1) Намерете максималната „стойност“ на масива за всички елементи в колекцията:

db.collection.aggregate([
    { $unwind: "$array" },
    { $group: { _id: "$_id", value: { $max: "$array.value" } } }
]);

2) Намерете максималната „стойност“ на масива за посочения елемент:

db.collection.aggregate([
    { $match: { _id: new ObjectId("526d89571cd72ce9dbb6b443") } },
    { $unwind: "$array" },
    { $group: { _id: null, value: { $max: "$array.value" } } }
]);

Използвайте истинско име на колекция вместо collection в тези примери.

Малко информация за това как да използвате агрегиране в Java MongoDB драйвер:Драйвер на Java и рамка за агрегиране .



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. MongoDB $dayOfMonth

  2. как да структурирам съставен индекс в mongodb

  3. Вмъкване на обект momentjs в Meteor Collection

  4. Mongoose findOneAndUpdate и upsert не връщат грешки, няма засегнати документи

  5. Има ли някаква опция за ограничаване на използването на паметта на mongodb?