[find()操作中的MongoDB Flatten嵌入式文档

问题描述 投票:0回答:1

我看过几篇有关此的文章,但似乎都没有实现我想要的。我有一个集合,可以查询和接收在根级文档中包含数据然后在嵌入式文档中包含数据的文档;我想选择性地访问和返回根级别和嵌入级别中的仅几个字段,但是我希望所有这些字段都在根级别文档中。我正在使用mongoengine和pymongo。

例如,请参见下面的代码:

return self.test_collection.find({'Date': {'$gte': start_date}, 'Date': {'$lte': end_date},
                                                    'customer': {'$in': customers}},
                                                   {'Date': 1, 'Time': 1, 'ID': 1,
                                                    'customer': 1, 'style': 1, 'price': 1, 'qty': 1,
                                                    'product.code': 1, 'product.vendor': 1})

上面的内容当前类似于我要查找的{date, time, id, customer, style, price, qty, product {code, vendor}}{date, time, id, customer, style, price, qty, code, vendor}这是一个需要查询的大集合,我真的不想从每个文档中提取我想要的值。有什么想法吗?

python-3.x mongodb pymongo mongoengine
1个回答
0
投票

我不确定,但看来您可以使用聚合($ match和$ project)

在项目中使用$filter

© www.soinside.com 2019 - 2024. All rights reserved.