如何使用 Mongodb java 获取文档数组?
How to get array of document using Mongodb java?
如何获取mongodbjava数组下的所有文档。我的数据库如下。想要检索数组 198_168_1_134
.
下的所有数据
以下是我尝试过的一些内容,
eventlist.find(new BasicDBObject("$match","192_168_10_17"))
eventlist.find(new BasicDBObject("$elemMatch","192_168_10_17"))
eventlist.find(null, new BasicDBObject("2_168_10_17", 1))
您有两个选择:
- 使用
.find()
挑选您必须获取的文档。
- 通过投影文档使用聚合框架。
通过使用 .find()
,您可以:
db.collection.find({}, { 192_168_10_17 : 1 })
通过使用聚合框架,您可以:
db.collection.aggregate( { $project : { 192_168_10_17 : 1 } } )
这将获取仅 192_168_10_17
文档数据。
当然,为了在 Java 中实现此功能,您必须 将这些查询翻译 到相应的 BasicDBObject
实例链。
通过使用 mongo java 驱动程序,您可以通过以下查询 -
eventlist.find(new BasicDBObject(), new BasicDBObject("198_168_1_134", 1))
如何获取mongodbjava数组下的所有文档。我的数据库如下。想要检索数组 198_168_1_134
.
以下是我尝试过的一些内容,
eventlist.find(new BasicDBObject("$match","192_168_10_17"))
eventlist.find(new BasicDBObject("$elemMatch","192_168_10_17"))
eventlist.find(null, new BasicDBObject("2_168_10_17", 1))
您有两个选择:
- 使用
.find()
挑选您必须获取的文档。 - 通过投影文档使用聚合框架。
通过使用 .find()
,您可以:
db.collection.find({}, { 192_168_10_17 : 1 })
通过使用聚合框架,您可以:
db.collection.aggregate( { $project : { 192_168_10_17 : 1 } } )
这将获取仅 192_168_10_17
文档数据。
当然,为了在 Java 中实现此功能,您必须 将这些查询翻译 到相应的 BasicDBObject
实例链。
通过使用 mongo java 驱动程序,您可以通过以下查询 -
eventlist.find(new BasicDBObject(), new BasicDBObject("198_168_1_134", 1))