gpt4 book ai didi

mongodb - Mongo更新所有字段为空的记录

转载 作者:行者123 更新时间:2023-12-02 07:48:01 26 4
gpt4 key购买 nike

如何更新所有将单个字段设置为“null”或根本没有值的 Mongo 文档?

我有什么,但我不确定它是否正确:

db.collection.update({name: {$eq: null}}, {$set: {name: 'test'}})

最佳答案

如果名称字段不存在,请尝试:

db.collection.update({"name": {"$exists": false}}, {"$set": {"name": "test"}})

$set将添加具有指定值的新字段,前提是新字段不违反类型约束。

如果它存在且为空,或者没有设置值:

db.collection.update({"name": null}, {"$set": {"name": "test"}})
<小时/>

您可以使用 $or 组合两个查询 作为

db.collection.update(
{
"$or": [
{ "name": { "$exists": false } },
{ "name": null }
]
},
{ "$set": { "name": "test" } }
)
<小时/>

对于 MongoDB 3.2 及更高版本,请使用 updateMany()它根据过滤器更新集合中的多个文档:

db.collection.updateMany(
{
"$or": [
{ "name": { "$exists": false } },
{ "name": null }
]
},
{ "$set": { "name": "test" } }
)

关于mongodb - Mongo更新所有字段为空的记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29258296/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com