📜  如何在 mongodb 中推送数组 (1)

📅  最后修改于: 2023-12-03 15:08:43.132000             🧑  作者: Mango

如何在 MongoDB 中推送数组

在 MongoDB 中,可以使用 $push 操作符来将一个值添加到某个字段上的数组中。下面是详细的介绍和示例。

使用 $push 操作符

使用 $push 操作符可以将一个值添加到数组的末尾,或者添加多个值到数组中。

添加单个值到数组中

下面的示例将一个新的元素 { "name": "apple", "price": 1.99 } 添加到 fruits 数组中:

db.inventory.update(
   { _id: 1 },
   { $push: { fruits: { name: "apple", price: 1.99 } } }
)

如果 fruits 字段不存在,MongoDB 会自动创建它。

添加多个值到数组中

下面的示例将两个新的元素添加到 fruits 数组中:

db.inventory.update(
   { _id: 1 },
   {
     $push: {
       fruits: {
         $each: [
           { name: "apple", price: 1.99 },
           { name: "banana", price: 0.99 }
         ]
       }
     }
   }
)

使用 $each 操作符指定要插入的值的数组。

使用 $addToSet 操作符

使用 $addToSet 操作符可以将一个不在数组中的值添加到数组中。

下面的示例将一个新的元素 { "name": "orange", "price": 2.99 } 添加到 fruits 数组中,但只有在该元素不存在于数组中时才会添加:

db.inventory.update(
   { _id: 1 },
   { $addToSet: { fruits: { name: "orange", price: 2.99 } } }
)
结论

使用 $push 操作符可以将一个值添加到数组中,使用 $addToSet 操作符可以将一个不在数组中的值添加到数组中。简单直接的操作让 MongoDB 使用变得容易。