MongoDB查询以从数组中提取多个值
要提取值,请使用$pull并设置multi:true。首先让我们创建一个包含文档的集合-
> db.demo392.insertOne(
... {
... Name: 'Chris',
... details: [
... {
... _id: '101'
...
... },
... {
... _id: '102'
... }
... ]
... }
... );
{
"acknowledged" : true,
"insertedId" : ObjectId("5e5d2b3322064be7ab44e802")
}
>
> db.demo392.insertOne(
... {
... Name: 'Chris',
... details: [
... {
... _id: '104'
...
... },
... {
... _id: '101'
... }
... ]
... }
... );
{
"acknowledged" : true,
"insertedId" : ObjectId("5e5d2b3422064be7ab44e803")
}在find()方法的帮助下显示集合中的所有文档-
> db.demo392.find();
这将产生以下输出-
{
"_id" : ObjectId("5e5d2b3322064be7ab44e802"), "Name" : "Chris", "details" : [
{ "_id" : "101" }, { "_id" : "102" }
]
}
{
"_id" : ObjectId("5e5d2b3422064be7ab44e803"), "Name" : "Chris", "details" : [
{ "_id" : "104" }, { "_id" : "101" }
]
}以下是从数组查询$pull-
> db.demo392.update(
... { },
... { $pull: { details: { _id: '101' } } },
... { multi: true }
... )
WriteResult({ "nMatched" : 2, "nUpserted" : 0, "nModified" : 2 })在find()方法的帮助下显示集合中的所有文档-
> db.demo392.find();
这将产生以下输出-
{ "_id" : ObjectId("5e5d2b3322064be7ab44e802"), "Name" : "Chris", "details" : [ { "_id" : "102" } ] }
{ "_id" : ObjectId("5e5d2b3422064be7ab44e803"), "Name" : "Chris", "details" : [ { "_id" : "104" } ] }热门推荐
6 保研的祝福语简短
10 年轻20岁祝福语简短
11 朋友结婚祝福语信息简短
12 女孩婚礼贺卡祝福语简短
13 30段点歌简短祝福语
14 虎年春节祝福语图文简短
15 写给后妈祝福语大全简短
16 简短回复生日祝福语
17 校长送毕业祝福语简短
18 毕业立体贺卡祝福语简短