你能做一个MongoDB聚合投影算子吗?

时间:2015-11-30 16:37:10

标签: mongodb aggregation-framework

你能做一个MongoDB聚合投影算子{$cond: { '$field': {$in: ['val1', 'val2']}}}吗?或者我必须将其分解为$or

目前我有一个:

$project: {
  countNames: [
     // if
     {$or: [
       {$eq: ['$name', 'Frist variant']},
       {$eq: ['$name', 'Second variant']}
     ]
     // then
     1,
     // else
     0
   ]
 }

我只是想知道是否有办法避免重复 $eq&#39> ,例如:

sum: {
  $cond: [
     '$name': {$in: ['Frist', 'Second']},
     1,
     0
  ]
}

好的,我知道我写的版本没有用(尝试过),但是有没有可以做到的运营商?当有更多的时候,重复$ eq会迅速变老,我有时会采用多阶段管道或mapReduce。这将有助于我的一些代码。

对于它的价值,我目前使用MongoDB 2.6,但我计划在几周内将生产转换为Mongo 3,因此v3解决方案也是可以接受的。

0 个答案:

没有答案