【发布时间】:2019-03-26 16:58:56
【问题描述】:
我有一份格式如下的文件
{
"_id": "5c9a53b348a0ac000140b5f9",
"e": [
{
"_id": "d6c74cd5-5808-4b0c-b857-57ddbcc72ce5",
"isDeleted": true
},
{
"_id": "d6c74cd5-5808-4b0c-b857-57ddbcc72ce6",
"isDeleted": false
}
]
}
每个文档都有一个元素列表,每个元素可能会或可能不会被删除。默认情况下,我不想返回已删除的数据。现在,我在服务器端过滤它们,但这仍然意味着大量数据被不必要地传输。是否可以在数据库中排除这些数据?
我查看了$elemMatch,但它只返回一个值,因此它看起来不像是适合这项工作的工具。
有没有办法将包含嵌套文档数组的文档投影为仅包含符合特定条件的那些子文档?
【问题讨论】:
-
您希望上述示例文档的输出是什么?
-
@AnthonyWinzlet 除了
e集合之外,文档中的每个字段都应该只包含具有isDeleted == false的元素。
标签: mongodb projection