![](/img/trans.png)
[英]Getting a Mongodb ArrayOfObjects value from POJO class with Java driver
[英]How do I get the value of Arrays ArrayOfObjects in Mongodb-java driver
我的文档如下所示。我需要获取 Email Systems.Bob 和 Email Systems.System = Bob 的值。我尝试使用下面的 MongodbQuery 但没有得到正确的结果。任何人都可以建议如何使用 Mongodb 获得所需的结果Java 驱动程序。 查询:db.users.find( { "Email Systems": { $elemMatch: {$eq: "Atlas"} } } );
{
"_id" : ObjectId("5f0890e870e631865877e"),
"user" : "testuser",
"Email" : "testuser@sample.com",
"Batch Systems" : [
"STAR",
"STORY",
"ITEMS",
],
"Email Systems" : [
{
"Bob" : {
"System" : "Bob",
**"result"** : true
}
},
{
"Wild" : {
"System" : "Wild",
"result" : true
}
},
{
"CRaft" : {
"System" : "Craft",
"result" : false
}
}
]
}
要获取Email Systems.Bob
您可以使用以下查询:
db.users.find({ "Email Systems.Bob": { $exists: true} })
获取Email Systems[].{dynamic-key}.System == 'Bob'
。
我认为不可能为查询中的动态键传递某种正则表达式,AFAIK。
在这里,您可以获取带有Email Systems
字段的所有文档,并在您的 Java 代码中对其进行过滤。 (虽然效率不高)
db.users.find({ "Email Systems": { $exists: true} })
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.