我有以下文档:
"Demo" : {
"SI" : {
"Value1" : 40,
"Value2" : [
10,
15,
20
]
} ,
"RS" : {
"Value1" : 4,
"Value2" : [
1,
2,
3,
4
]
}
}
我想获取子文档“SI”的数据。我尝试过以下查询:
db.getCollection('input').find({"Demo.SI":"SI"})
,但它没有给出“SI”文档的任何记录。所需的输出是:
"SI" : {
"Value1" : 40,
"Value2" : [
10,
15,
20
]
}
请指出查询出错的位置。
最佳答案
首先使用$exists
检查SI
是否存在,然后将其添加到projection
中,如下所示:
db.input.find({"Demo.SI":{"$exists":true}},{"Demo.SI":1,"_id":0}).pretty()
关于java - mongo shell中如何获取子文档记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46727452/