Forespørgsel
- bruger en systemvariabel
$$REMOVE
hvis et felt får denne værdi, fjernes det - så betingelsen er
user.code
, behold den gamle værdi, hvis ikke"BLOCKED"
,"CANCELLED"
, ellers"$$REMOVE"
feltet
db.collection.aggregate([
{
"$set": {
"user.code": {
"$cond": [
{
"$in": [
"$user.status",
[
"BLOCKED",
"CANCELLED"
]
]
},
"$$REMOVE",
"$user.code"
]
}
}
}
])
Rediger
Ovenstående kode kontrollerer user.status
men du vil fjerne kode eller ikke baseret på user.olderAdress.status
(efter afslapningen) (dets 2 felter med samme navn status)
Forespørgsel (tilføj dette efter de stadier, du allerede har)
{
"$set": {
"user.code": {
"$cond": [
{
"$in": [
"$user.status",
[
"BLOCKED",
"CANCELLED"
]
]
},
"$$REMOVE",
"$user.code"
]
}
}
}