Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/mongodb/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
$project mongodb聚合中的$regex_Mongodb_Mongoose_Mongodb Query - Fatal编程技术网

$project mongodb聚合中的$regex

$project mongodb聚合中的$regex,mongodb,mongoose,mongodb-query,Mongodb,Mongoose,Mongodb Query,我有一个users集合,其中有一个类型为String的位置字段。我想沿着文档传递一个分数字段,它显示文档的位置是否与文本“Austin”相似。例如,记录的位置是德克萨斯州奥斯汀,我希望它与奥斯汀匹配。我想可以用$regex来做这个 我写了这篇文章: $project: { score: { $cond: if: { $regex: {'$location': /Austin/} }, then: 1, else: 0

我有一个
users
集合,其中有一个类型为
String
的位置字段。我想沿着文档传递一个分数字段,它显示文档的位置是否与文本“Austin”相似。例如,记录的位置是德克萨斯州奥斯汀,我希望它与奥斯汀匹配。我想可以用$regex来做这个

我写了这篇文章:

$project: {
  score: {
    $cond: 
      if: {
        $regex: {'$location': /Austin/}
      },
      then: 1,
      else: 0
    }
  },
  location: 1,
  firstName: 1,
  lastName: 1
}
但我得到的是:

{
    "name": "MongoError",
    "errmsg": "exception: invalid operator '$regex'",
    "code": 15999,
    "ok": 0
}

$cond:{if:then:else}
对不起,我编辑了这个问题。仍然相同的错误$location应该与“location”一样位于“score”位置。是否有任何样本数据?我猜不出score是什么样子,以及您希望它是什么样子。看起来$regex在$project中不支持,可能需要使用mapReduce来构建另一个表。