我有一个带结构的mongo db集合
randomstring - 表示字符串实际上是随机的,它在集合的每个文档中都是不同的。
{
"notrandom":{
"randomstring":{
"randomstring":{
"randomstring":{
"notrandom2":"data"
}
}
}
}
}
我该如何投射这些数据?
之类的东西db.mydb.aggregate( "notrandom[0][0].notrandom2":1}} , ] )
我想要实现的是所有notrandom2
值的集合。
答案 0 :(得分:0)
如果您要将notrandom2
移到文档结构中的较高级别,
你可以像这样使用$project
阶段:
{
$project:{
_id:1,
notrandom2:"notrandom.randomstring.randomstring.randomstring.notrandom2",
// list all others fields with field:1 if you want them to appear down in pieline
}}
如果此字段是数组的一部分,则需要先$unwind
,然后$project
答案 1 :(得分:0)
您可以使用以下查询
db.mydb.find({<findquery (in you have any)>},{"notrandom.randomstring.randomstring.randomstring.notrandom2" : 1}).
toArray(function(err, result)
{
console.log(result); //Array of objects with `notrandom2` values
})