mongodb / mongoose聚合或返回null

时间:2015-08-27 15:59:51

标签: node.js mongodb mongoose aggregation-framework

为什么这不起作用?

我无法使用$或条件。但是,当我简单地将两个正则表达式Expessions放在一个联合声明中时,它会返回结果。

Zip.aggregate(

  {
    $or: [
           {$match: {'ort': regExp}},
           {$match: {'ortsteile.ortsteil': regExp}}

    ]
  },

  function(err, results) {

    //returns null

});



// while this returns results:


Zip.aggregate(

  {$match: {'ort': regExp, 'ortsteile.ortsteil': regExp}},

  function(err, results) {

    //returns a list of results

});

2 个答案:

答案 0 :(得分:1)

Zip.aggregate(
  {
    $match: {
        $or : [
            {
                "ort":regExp
            },
            {
                "ortsteile.ortsteil": regExp
            }
        ]
    }
  },

  function(err, results) {

    //returns result

});

答案 1 :(得分:1)

您的查询错误。

Zip.aggregate({
    $match: {
        $or : [
            { 'ort':regExp },
            { 'ortsteile.ortsteil': regExp }
        ]
    }},
  function(err, results) {
    //your code to handle results
});