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

получавате различни стойности със сортирани данни

Можете да използвате рамката за агрегиране, за да групирате по елемента, който искате да бъде различен (групата го прави различен). Така че, ако искате да сортирате по резултат, тогава вземете отделни ключове, можете да направите следното - сортиране по резултат, групиране по ключ и добавяне на резултат като масиви от елементи (вече сортирани):

db.test.aggregate([
    { $sort : { score : -1 } },
    { $group : {_id : "$key", scores : { $push : "$score" } } }
])

Това ще доведе до отделни ключове заедно с масив от резултати, които са онези резултати, съдържащи се в документите с дублирани ключове. Не съм сигурен, че това е точно това, което търсите и знам, че това е стар въпрос, но си помислих, че това може да помогне на някой друг да го разгледа в бъдеще - като алтернативен начин за това.



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Spring Data MongoDB – индекси, анотации и конвертори

  2. Заявка за обобщено съвпадение на Mongodb с приоритет при пълно съвпадение

  3. node.js express mongodb запазване на съобщения?

  4. Да върне ли ограничен брой записи от определен тип, но неограничен брой други записи?

  5. Актуализиране на подполе в mongoDB документ с помощта на findOne и запазване