gpt4 book ai didi

node.js - 检查数组中是否存在所有元素

转载 作者:太空宇宙 更新时间:2023-11-03 23:18:08 25 4
gpt4 key购买 nike

我正在尝试使用 mongoose 查找数组的所有元素是否在 MongoDB 数据库的数组中找到。

如果我在 MongoDB 中的数据是 -

{
row: "A",
reserve: [1,2,3]
}

如果我的查询数据是 -

{
row: "A",
arr: [1,2] // I want it to return result
}

如果我的查询数据是

{
row: "A",
arr: [1,2,4] // I want it to return null
}

我想更新数据,但每次都在更新

Reserved.updateOne({row: "A", reserve: {$in: arr}, {
$push: {
reserve: arr
}
}, (err, result) => {
// ...
});

请帮助我。

最佳答案

您可以使用$all运算符来匹配数组中的所有元素。

来自文档

The $all operator selects the documents where the value of a field is an array that contains all the specified elements.

db.collection.updateOne({ "row": "A", "reserve": { "$all": array }})

或者甚至使用查找查询

db.collection.find({ "row": "A", "reserve": { "$all": array }})

关于node.js - 检查数组中是否存在所有元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52804904/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com