📜  MongoDB - 字段更新操作符(1)

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

MongoDB - 字段更新操作符

MongoDB是一个高性能、面向文档的NoSQL数据库。在MongoDB中,字段更新操作符允许程序员对文档中的指定字段进行更新。这些操作符提供了灵活的方式来修改文档中的特定字段的值。

以下是一些常用的字段更新操作符:

$set

$set操作符用于更新文档中一个或多个字段的值。它接受一个键值对作为参数,将指定字段的值设置为给定的值。如果字段不存在,$set操作符将创建该字段。

```python
db.collection.update(
  <criteria>,
  { $set: { <field1>: <value1>, <field2>: <value2>, ... } } 
)

## $unset

`$unset`操作符用于从文档中删除指定字段。它接受一个字段名作为参数,并从文档中删除该字段。

```markdown
```python
db.collection.update(
  <criteria>,
  { $unset: { <field>: "" } }
)

## $inc

`$inc`操作符用于将指定字段的值增加特定的数值。它接受一个键值对作为参数,将指定字段的值增加给定的数值。如果字段不存在,`$inc`操作符将创建该字段,并将其值设置为给定的数值。

```markdown
```python
db.collection.update(
  <criteria>,
  { $inc: { <field>: <value> } }
)

## $rename

`$rename`操作符用于将文档中的字段重命名。它接受两个键值对作为参数,第一个键值对指定要重命名的字段,第二个键值对指定新的字段名。

```markdown
```python
db.collection.update(
  <criteria>,
  { $rename: { <old_field>: <new_field> } }
)

## $currentDate

`$currentDate`操作符用于将指定字段的值设置为当前日期或时间。它接受一个键值对作为参数,第一个键值对指定要设置值的字段,第二个键值对指定日期或时间类型。

```markdown
```python
db.collection.update(
  <criteria>,
  { $currentDate: { <field>: <type> } }
)

## 示例:

以下是一个使用`$set`操作符的示例,将文档中的`age`字段的值设置为30:

```markdown
```python
db.users.update(
  { _id: ObjectId("614f3ff3a979990f07f08a8c") },
  { $set: { age: 30 } }
)

这里,`users`是集合的名称,`_id`是要更新的文档的标识符。

以上是MongoDB中常用的字段更新操作符的介绍。这些操作符提供了灵活的方式来更新和修改文档中的字段值,帮助程序员高效地管理和操作MongoDB数据库中的数据。