Pokud tam pole pro název není, zkuste:
db.collection.update({"name": {"$exists": false}}, {"$set": {"name": "test"}})
$set
přidá nové pole se zadanou hodnotou za předpokladu, že nové pole neporušuje omezení typu.
Pokud je tam a má hodnotu null nebo nemá nastavenou hodnotu:
db.collection.update({"name": null}, {"$set": {"name": "test"}})
Oba dotazy můžete zkombinovat pomocí $or
jako
db.collection.update(
{
"$or": [
{ "name": { "$exists": false } },
{ "name": null }
]
},
{ "$set": { "name": "test" } }
)
Pro MongoDB 3.2 a vyšší použijte updateMany()
který aktualizuje více dokumentů v rámci kolekce na základě filtru:
db.collection.updateMany(
{
"$or": [
{ "name": { "$exists": false } },
{ "name": null }
]
},
{ "$set": { "name": "test" } }
)