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

Mongodb - агрегиране $push, ако е условно

Можете да използвате "$$REMOVE" :

  • Тази системна променлива беше добавена във версия 3.6 (mongodb документи)
db.collection.aggregate([{
   $group:{
       field: {
          $push: {
              $cond:[
                { $gt: ["$A", 0] },
                { id: "$_id", A:"$A" },
                "$$REMOVE"
            ]
          }
        },
        secondField:{ $push: "$B" }
    }
])

По този начин не е нужно да филтрирате нулеви стойности.



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Възел - Mongoose 3.6 - Заявка за сортиране с попълнено поле

  2. Форматирайте число като процент в SQL

  3. Как да актуализирам полетата на документа на MongoDB само ако не съществуват?

  4. Сортиране по максимално поле на масива, възходящо или низходящо

  5. Как да поставите файл с изображение в json обект?