推荐答案
$min 操作符用于更新文档中的字段值,确保该字段的值不会小于指定的值。如果字段不存在,$min 会创建该字段并将其值设置为指定的值。如果字段的当前值小于指定的值,$min 不会进行任何操作。
本题详细解读
语法
db.collection.update(
<query>,
{ $min: { <field1>: <value1>, ... } },
<options>
)参数说明
<query>:用于筛选要更新的文档。$min:操作符,用于更新字段值。<field1>:要更新的字段名。<value1>:指定的最小值。<options>:可选的更新选项,如upsert、multi等。
示例
假设有一个集合 products,其中包含以下文档:
{ "_id": 1, "price": 100 }
{ "_id": 2, "price": 200 }使用 $min 操作符更新 price 字段:
db.products.update(
{ _id: 1 },
{ $min: { price: 150 } }
)执行后,_id 为 1 的文档的 price 字段值将保持不变,因为 100 小于 150。
再执行以下更新:
db.products.update(
{ _id: 2 },
{ $min: { price: 150 } }
)执行后,_id 为 2 的文档的 price 字段值将被更新为 150,因为 200 大于 150。
注意事项
- 如果字段不存在,
$min会创建该字段并将其值设置为指定的值。 $min操作符可以用于多个字段的更新。$min操作符不会影响其他字段的值。