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

изберете 2 полета и върнете сортиран масив с техните отделни стойности

Трябва да $group нашите документи и използвайте $push оператор на акумулатор за връщане на масив от "a" и "b" в колекцията.

В $project оператор използвате $setUnion оператор за филтриране на дубликатите.

db.coll.aggregate(
    [
        { "$group": { 
            "_id": null, 
            "a": { "$push": "$a" }, 
            "b": { "$push": "$b" } 
        }}, 
        { "$project": {
            "_id": 0, 
            "merged": { "$setUnion": [ "$a", "$b" ] } 
        }} 
    ]
)

което произвежда:

{ "merged" : [ 3, 2, 0, 1 ] }


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. System.TimeoutException:Възникна изчакване след 30000ms избиране на сървър с помощта на CompositeServerSelector

  2. JSON.parse() еквивалент в mongo драйвер 3.x за Java

  3. MongoDB:Брой съвпадащи елементи на вложен масив

  4. Уникално ограничение с две полета в MongoDB

  5. Грешка по време на mongoimport