📜  MongoDB – $pullAll 运算符

📅  最后修改于: 2022-05-13 01:56:58.268000             🧑  作者: Mango

MongoDB – $pullAll 运算符

MongoDB 提供了不同类型的数组更新运算符来更新文档中数组字段的值, $pullAll运算符就是其中之一。此运算符用于从现有数组中删除指定值的所有实例。这是从$拉动运算符不同, $pull运算符指定的查询中删除的项目,而$ pullAll运算符移开匹配所列值的项目。您可以根据需要将此运算符与 update()、findAndModify() 等方法一起使用。

句法:

{ $pullAll: { : [ ,  ... ], ... } }

在这里, field可以在嵌入/嵌套文档或数组中使用点符号指定,如果value是数组或文档,则$pullAll运算符将仅删除数组中与指定匹配的那些项目。

注意: $pullAll运算符将按照它们在value中指定的相同顺序从数组中删除项目。

在以下示例中,我们正在使用:



使用 $pullAll运算符从数组中删除项目:

在这个例子中,我们将在 $pullAll运算符的帮助下从语言字段中删除列表中指定的项目,即 [“ Java”、“C#”、“Python ”]。

db.contributor.update({name: "Rohit"},
                      {$pullAll: {language: ["Java", "C#", "Python"]}})

使用 $pullAll运算符从嵌入文档中的数组中删除项目:

在此示例中,我们将在 $pullAll运算符的帮助下从个人.semesterMarks 字段中删除列表中指定的项目,即 [71, 72]。

db.contributor.update({name: "Sumit"},
                      {$pullAll: {"personal.semesterMarks": [71, 72]}})