Javascript MongoDB/Mongoose:根据数组大小从数组或整个文档中删除一个对象

Javascript MongoDB/Mongoose:根据数组大小从数组或整个文档中删除一个对象,javascript,arrays,mongodb,object,mongoose,Javascript,Arrays,Mongodb,Object,Mongoose,我有一份结构如下的文件: { "Category": ["Car"], "Price": [1, 100000], "userInfo": [{ "userId": "60734e234948882f20cb31de", "userName": "apple" }, {

我有一份结构如下的文件:

{
    "Category": ["Car"],
    "Price": [1, 100000],
    "userInfo": [{
        "userId": "60734e234948882f20cb31de",
        "userName": "apple"
    }, {
        "userId": "6060d3cd8231610848942f69",
        "userName": "test"
    }]
}
我想要实现的是按用户名从userInfo数组中删除一个元素。如果userInfo数组变为空,则删除整个文档

举个小例子:我想删除
userName=“test”
成员,我的文档如下所示:

"Category": ["Car"],
"Price": [1, 100000],
"userInfo": [{
        "userId": "60734e234948882f20cb31de",
        "userName": "apple"
    }]
稍后如果我删除
userName=“apple”
我的数组将变为空,因此我想删除整个文档


我可以只使用一个查询来实现这一点,还是应该编写一个用于删除,另一个用于检查数组的空性?提前感谢。

您必须为删除主文档编写单独的查询,
.deleteMany({userInfo:[]})
实际上我是通过ID找到文档的,所以我不需要使用deleteMany,只需使用deleteMone,但谢谢。