如果嵌套数组元素的第一个值为 0,我想从数组中删除该元素。 数据如下所示。
[
{
"data": [[0,1],[2,3],[0,3],[4,5]]
}
]
这是我的解决方案,但不起作用。
db.collection.update({},
{
"$pull": {
"data": {
"$elemMatch": {
"0": 0
}
}
}
})
最佳答案
如果您使用的是 Mongo 4.2+ 版本,您可以使用 pipelined updates像这样:
db.collection.update({},
[
{
$set: {
data: {
$filter: {
input: "$data",
as: "datum",
cond: {
$ne: [
{
$arrayElemAt: [
"$$datum",
0
]
},
0
]
}
}
}
}
}
])
关于mongodb - 如何从数组中删除嵌套数组元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65844473/