【问题标题】:mongodb/mongoose aggregate with or returns nullmongodb/mongoose 聚合或返回 null
【发布时间】:2017-06-23 21:13:19
【问题描述】:

为什么这不起作用?

我无法处理 $or 条件。然而,当我简单地将两个正则表达式表达式放在一个联合声明中时,它会返回结果。

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

});

【问题讨论】:

    标签: node.js mongodb mongoose aggregation-framework


    【解决方案1】:
    Zip.aggregate(
      {
        $match: {
            $or : [
                {
                    "ort":regExp
                },
                {
                    "ortsteile.ortsteil": regExp
                }
            ]
        }
      },
    
      function(err, results) {
    
        //returns result
    
    });
    

    【讨论】:

    • 谢谢。我至少会想到一条错误消息。
    【解决方案2】:

    您的查询错误。

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

    【讨论】:

      猜你喜欢
      • 2022-10-13
      • 2021-11-18
      • 2016-11-16
      • 2020-01-29
      • 1970-01-01
      • 2020-05-19
      • 1970-01-01
      • 2016-05-20
      • 2020-10-10
      相关资源
      最近更新 更多