如何在mongodb中查询特定的内部对象?
我有一个类似这样的集合“testcase”,测试构建有许多测试用例日志,测试用例日志有许多标记。例如,我有一个查询,其中标记应该有“tag1” 问题是它获取了测试构建的所有测试用例日志。但我只想要“tag1”存在的测试用例日志 例如:如何在mongodb中查询特定的内部对象?,mongodb,Mongodb,我有一个类似这样的集合“testcase”,测试构建有许多测试用例日志,测试用例日志有许多标记。例如,我有一个查询,其中标记应该有“tag1” 问题是它获取了测试构建的所有测试用例日志。但我只想要“tag1”存在的测试用例日志 例如: { "name" : "TestBuild1" "logs: [ {"name" : "Log1" "tags" : ["tag1","tag2"]}, {"name" : "Log2" "tags" : ["tag3","
{
"name" : "TestBuild1"
"logs: [
{"name" : "Log1"
"tags" : ["tag1","tag2"]},
{"name" : "Log2"
"tags" : ["tag3","tag4"]}
]
}
上面的查询返回整个测试构建,但我只想得到带有“Log1”的测试构建,而不是“Log2”。这怎么可能呢?在MongoDB中,不能从数组中提取部分元素。您需要在客户端将其过滤掉,或者按照说明进行映射/缩减此功能还有JIRA票据。的精确副本,其中列出了多个答案。
{
"name" : "TestBuild1"
"logs: [
{"name" : "Log1"
"tags" : ["tag1","tag2"]},
{"name" : "Log2"
"tags" : ["tag3","tag4"]}
]
}