删除mongoose中数组中包含的对象中包含的数组中的元素

删除mongoose中数组中包含的对象中包含的数组中的元素,mongoose,Mongoose,我在mongoose中有一个具有此属性的文档,如下所示: mapping: [ { a: 1, b: [1,2,3] }, { d: 1, c: [1,2,3] } ] 我的问题是,如何删除b中包含的值3。我有b值和数字“3”。如果b为空,则删除整个对象{a:1,b:[1,2,3]} Test.findOneAndUpdate( { "mapping.a" : 1 }, { "$pull": { "a.$.b": "3" } } ) 我尝试了这个方法,但我需要在b为

我在mongoose中有一个具有此属性的文档,如下所示:

mapping: [
 { a: 1, b: [1,2,3] }, 
 { d: 1, c: [1,2,3] }
]
我的问题是,如何删除
b
中包含的值3。我有
b
值和数字“3”。如果
b
为空,则删除整个对象
{a:1,b:[1,2,3]}

Test.findOneAndUpdate(
    { "mapping.a" : 1 }, 
    { "$pull": { "a.$.b": "3" } } 
)

我尝试了这个方法,但我需要在
b
为空时删除对象。

你能显示你已经写了什么吗?这将有助于了解您拥有什么,并确定需要什么。我用我的代码示例进行了编辑。您是否看到了这一点:我认为它将为您指明正确的方向