【发布时间】:2016-10-11 21:52:45
【问题描述】:
手工编写时,我的聚合管道中的 $project 步骤如下所示:
{
"$project":{
"DRIVE":{
"componentSummary":{"manufacturer" : "$_id.DRIVE_manufacturer"},
"componentCount":"$_id.DRIVE_componentCount"
},
"hostnames":1,
"_id":0
}
}
我知道我可以使用ProjectionOperationBulder 创建单层嵌套(使用builder.nested),例如:
{
"$project":{
"DRIVE":{
"manufacturer":"$_id.DRIVE_manufacturer"
},
"hostnames":1,
"_id":0
}
}
但我似乎无法弄清楚如何嵌套另一个更深的级别,因为Field 接口只允许一个字符串名称和一个字符串目标,而不是能够将另一个Field 定义为目标。
谢谢!
【问题讨论】:
标签: java mongodb spring-data aggregation-framework spring-data-mongodb