2024-09-28 03:23:32 发布
网友
我需要使用mongoengine对MongoDB进行查询
mongoengine
我有一个包含组列表的文档: groups = ['groupa', 'groupb'...]
groups = ['groupa', 'groupb'...]
此外,我还有其他组的列表my_groups= ['groupc', 'groupd', 'groupc'...]
my_groups= ['groupc', 'groupd', 'groupc'...]
我们想要的结果是找到在这些数组之间有任何匹配的所有文档。在
我看到了这个question,但它不是通过mongoengine
我怎样才能通过mongoengine来实现呢?在
将纯MongoDB查询应用于Mongoengine非常容易。假设您的集合名为Foo,字段名为groups,与之比较的列表被分配给变量my_groups,来自{a1}的查询如下所示
Foo
groups
my_groups
Foo.objects.aggregate(*[ { "$match": { "groups.1": { "$exists": True } } }, { "$redact": { "$cond": [ { "$gte": [ { "$size": { "$setIntersection": [ "$groups", my_groups ] } }, 1 ]}, "$$KEEP", "$$PRUNE" ] }} ])
请注意list参数前面的星号。在
将纯MongoDB查询应用于Mongoengine非常容易。假设您的集合名为
Foo
,字段名为groups
,与之比较的列表被分配给变量my_groups
,来自{a1}的查询如下所示请注意list参数前面的星号。在
相关问题 更多 >
编程相关推荐