sql >> Databáze >  >> NoSQL >> MongoDB

Absolutní hodnota s agregačním rámcem MongoDB

Není to přímo dostupné, ale můžete to udělat pomocí $cond operátor a $subtract v rámci $project takto (jako objekt JavaScript):

{ $project: {
  amount: {
    $cond: [
      { $lt: ['$amount', 0] },
      { $subtract: [0, '$amount'] }, 
      '$amount'
    ]
}}}

Pokud tedy amount < 0 a poté 0 - amount se používá, jinak amount se používá přímo.

AKTUALIZACE

Ke dni 3.2 vydání MongoDB, můžete použít nový $abs operátor agregačního výrazu, který to provede přímo:

{ $project: { amount: { $abs: '$amount' } }



  1. Mongoose, seřaďte dotaz podle vyplněného pole

  2. MongoDB:Jedinečný klíč ve vloženém dokumentu

  3. Jak mohu vytvořit program pomocí c++ ovladače mongodb?

  4. Chcete-li být explicitní, použijte „MongoMappingContext#setAutoIndexCreation(boolean)“ nebo přepište „MongoConfigurationSupport#autoIndexCreation()“