Mongodb 是否可以使用mongo字段值作为$regex[mongo db]中的模式?
假设我有数据Mongodb 是否可以使用mongo字段值作为$regex[mongo db]中的模式?,mongodb,mongodb-query,aggregation-framework,Mongodb,Mongodb Query,Aggregation Framework,假设我有数据 db = [ { "make": "audi", "year": "2018", "url": "xyz.com/makes-2019-"}, { "make": "audi", "year": "2013", "url": "abc.com/car/audi-2013"} ] 假设我需要查询url中是否存在make或year的数据。 像这样的事 db.cars.aggregate([ { "$match": { "$or": [
db = [
{ "make": "audi", "year": "2018", "url": "xyz.com/makes-2019-"},
{ "make": "audi", "year": "2013", "url": "abc.com/car/audi-2013"}
]
假设我需要查询url中是否存在make或year的数据。
像这样的事
db.cars.aggregate([
{
"$match": {
"$or": [
{ "url": {"$regex": $model, "$options": "i"}},
{ "url": {"$regex": $year, "$options": "i"}}
]
}
}])
除了map reduce之外,这似乎无法解决任何问题。您可以使用它来检查url
字符串是否包含make
子字符串
db.collection.aggregate([
{ "$match": {
"$expr": {
"$ne": [
{ "$indexOfCP": ["$url", "$make"] },
-1
]
}
}}
])