传递外部变量给Mongo查询[aggregate]



我正在尝试在pymongo中创建可重用的脚本,可以在对脚本进行最小更改的情况下用于未来的应用程序。试图将外部变量传递给具有$unwind, $objectToArray, $Project的聚合函数。我尝试了所有的方法,按照MongoDB手册,但没有运气。

例:Parent_Key = ' abc 'elements_list = "key1": "$abc.Key1"; "等。

下面是命令

db.test.aggregate([{"unwind&quot美元:Parent_Key},{"addfields&quot美元:{"abcrecordexists"{"gt"[{"size&quot美元:{"objectToArray&quot美元:"abc"}, 0}]}}},{"match&quot美元:{"abcrecordexists"{"gt&quot美元:0}}},{"project&quot美元:{"_id" 1、elements_list}}])

我正在尝试将上述声明的参数传递给上述查询。run in to不是一个已定义的名称。因为我刚来蒙古,这将是很大的帮助。

当然可以传递参数,只需要确保类型和语法是正确的。希望这给你一个想法:

from pymongo import MongoClient
db = MongoClient()['mydatabase']
db.mycollection.insert_one({'list': [1, 2, 3, 4]})
list_to_unwind = '$list'
projection = {'_id': 0}
agg = db.mycollection.aggregate([
{'$unwind': list_to_unwind},
{'$project': projection}
])

相关内容

  • 没有找到相关文章

最新更新