搜索MongoDB集合中的对象数组?

要搜索对象数组,请使用MongoDBfind()。该find()方法选择集合或视图中的文档,然后将光标返回到选定的文档。

让我们创建一个包含文档的集合-

> db.demo484.insertOne(

... { 'id' : 1, 'details' : [ { 'Name1' : 'Chris' }, { 'Name2' : 'David' }, { 'Name3' : 'Bob' } ] }

... );

{

   "acknowledged" : true,

   "insertedId" : ObjectId("5e82e3a4b0f3fa88e22790a1")

}

> db.demo484.insertOne(

... { 'id' : 1, 'details' : [ { 'Name1' : 'Chris' }, { 'Name2' : 'Carol' }, { 'Name3' : 'Bob' } ] }

... );

{

   "acknowledged" : true,

   "insertedId" : ObjectId("5e82e3a4b0f3fa88e22790a2")

}

> db.demo484.insertOne(

... { 'id' : 1, 'details' : [ { 'Name1' : 'Chris' }, { 'Name2' : 'Carol' }, { 'Name3' : 'Mike' } ] }

... );

{

   "acknowledged" : true,

   "insertedId" : ObjectId("5e82e3a4b0f3fa88e22790a3")

}

find()方法的帮助下显示集合中的所有文档-

> db.demo484.find();

这将产生以下输出-

{ "_id" : ObjectId("5e82e3a4b0f3fa88e22790a1"), "id" : 1, "details" : [ { "Name1" : "Chris" }, {

"Name2" : "David" }, { "Name3" : "Bob" } ] }

{ "_id" : ObjectId("5e82e3a4b0f3fa88e22790a2"), "id" : 1, "details" : [ { "Name1" : "Chris" }, {

"Name2" : "Carol" }, { "Name3" : "Bob" } ] }

{ "_id" : ObjectId("5e82e3a4b0f3fa88e22790a3"), "id" : 1, "details" : [ { "Name1" : "Chris" }, {

"Name2" : "Carol" }, { "Name3" : "Mike" } ] }

以下是查询MongoDB集合中的对象数组的查询-

> db.demo484.find(

... {$or: [

...    {'details.Name2': 'Carol', 'details.Name3': 'Mike'},

...    {'details.Name2': 'Carol', 'details.Name3': 'Bob'}

... ]}

... )

这将产生以下输出-

{ "_id" : ObjectId("5e82e3a4b0f3fa88e22790a2"), "id" : 1, "details" : [ { "Name1" : "Chris" }, {

"Name2" : "Carol" }, { "Name3" : "Bob" } ] }

{ "_id" : ObjectId("5e82e3a4b0f3fa88e22790a3"), "id" : 1, "details" : [ { "Name1" : "Chris" }, {

"Name2" : "Carol" }, { "Name3" : "Mike" } ] }

以上是 搜索MongoDB集合中的对象数组? 的全部内容, 来源链接: utcz.com/z/326616.html

回到顶部