2017-05-31 179 views
0

MongoDB $ cond是如何工作的?

{$ COND:{如果:,則:,其他:}}

如果計算結果爲真,那麼$ cond表達式,並返回表達式的值。否則,$ cond會計算並返回表達式的值。

+1

嘗試[三元操作](https://en.wikipedia.org/wiki/Ternary_operation)也有大量的例子在手動[' $ cond'(https://docs.mongodb.com/manual/reference/operator/aggregation/cond/)。什麼不清楚? –

+0

*「如果IF的計算結果爲真,則$ cond將評估並返回THEN表達式的值,否則$ cond會計算並返回ELSE表達式的值。」* - 您已回答了問題。 –

回答

0

您可以使用它$ COND像下面 -

domain.Wish.aggregate([{ 
     $match: { 
     event_id: mongoose.Types.ObjectId(wishesObj._id) 
     } 
     }, { 
     $group: { 
     _id: 'null', 
     amount: { 
      $sum: { 
      $cond: { 
       if: { 
       //'wishcontribute':{$ne:'jeenees_price'} 
       $ne: ["$wishcontribute", '$jeenees_price'] 
       }, 
       then: "$wishcontribute", 
       else: 0 
      } 
      } 
     } 
     } 
     }], function (err, data) {