Php 从MongoDB中删除子文档
我的mongoDB子文档结构如下所示Php 从MongoDB中删除子文档,php,mongodb,Php,Mongodb,我的mongoDB子文档结构如下所示 { "basecampaign" : [ { "timestamp" : "2014-07-28 08:09:22", "latest" : 0, "campaign" : [ { "id" : "1", "name" : "sta
{
"basecampaign" :
[
{
"timestamp" : "2014-07-28 08:09:22",
"latest" : 0,
"campaign" :
[ {
"id" : "1",
"name" : "status camp 1"
} ]
},
{
"timestamp" : "2014-07-29 08:09:22",
"latest" : 0,
"campaign" :
[ {
"id" : "2",
"name" : "status camp 2"
} ]
},
{
"timestamp" : "2014-07-30 08:09:22",
"latest" : 1,
"campaign" :
[ {
"id" : "3",
"name" : "status camp 3"
} ]
}
]
}
我想使用id删除子文档,我想删除id=3的块
{
"timestamp" : "2014-07-30 08:09:22",
"latest" : 1,
"campaign" :
[ {
"id" : "3",
"name" : "status camp 3"
} ]
}
我怎样才能得到这个建议 您可以使用。例如:
db.collection.update({},
{$pull:{basecampaign: {campaign.id:3}}},
{multi: true})
从所有文档中删除具有campaign
id
3的basecampaign
文档
或者,如果您只想删除活动块(您的问题不清楚)
从所选partent文档中的所有BaseAmpaign文档中移除id为3的活动块
db.collection.update({parent document select},
{$pull:{basecampaign.campaign: {id:3}}})