$exists
ikke understøttet i aggregate
forespørgsel fra MongoDB . Altså i aggregate
forespørgsel i stedet for $exists
kan bruge $ifNull
.
syntaks:
{ $ifNull: [ <expression>, <replacement-expression-if-null> ] }
Opdateret:
for at få b
værdi som true
eller false
kan prøve denne forespørgsel
db.test.aggregate([
{
$project: {
b: {
$cond: [
{$ifNull: ['$b', false]}, // if
true, // then
false // else
]
}
}
}
])
Forklaring:
b = $cond: [ 'if condition satisfied', 'then true', 'else false' ];
hvor condition = {$ifNull: ['$b', false]}
Her hvis $b
eksisterer ikke, så condition = false
ellers condition = true
.
så hvis condition = true
returner derefter derefter resultat det betyder b = true
hvis condition = false
returner derefter andet resultat betyder b = false