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,但谢谢。