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

Как да върна само НЯКОИ полета ($project) от агрегирането на Mongodb, като същевременно използвам $match, $lookup И $filter

https://stackoverflow.com/users/6635464/ngshravil-py беше на място.

Създадох друга проекция:

        var project2 = {
            $project: {
                "_id": 1,
                "userId": 1,
                "accessToken":1,
                "count":{$size:"$notifications"},
                "notifications._id":1,
                "notifications.summaryId": 1,
                "notifications.dateCreated":1,
                "notifications.dateProcessed":1,
            }
        };

След това го добавих към моя конвейер за агрегиране:

        var agg = [
            match,
            lookup,
            project,
            project2,
        ];

Работи! -- благодаря ви https://stackoverflow.com/users/6635464/ngshravil-py



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Mongo DB 4.0 Транзакции с Mongoose &NodeJs, Express

  2. 6 полезни инструмента за наблюдение на производителността на MongoDB

  3. пропуснат брой 0 в агрегатна функция

  4. Преформатирайте колекцията с помощта на конвейер за агрегиране в Mongodb

  5. Вземете броя на полетата във всеки документ чрез заявка с помощта на MongoDB java драйвер