$exists
no soportado en aggregate
consulta de MongoDB . Entonces en aggregate
consulta en lugar de $exists
puede usar $ifNull
.
sintaxis:
{ $ifNull: [ <expression>, <replacement-expression-if-null> ] }
Actualizado:
para obtener b
valor como true
o false
puede probar esta consulta
db.test.aggregate([
{
$project: {
b: {
$cond: [
{$ifNull: ['$b', false]}, // if
true, // then
false // else
]
}
}
}
])
Explicación:
b = $cond: [ 'if condition satisfied', 'then true', 'else false' ];
donde condition = {$ifNull: ['$b', false]}
Aquí si $b
no existe entonces condition = false
de lo contrario condition = true
.
entonces si condition = true
luego regresa luego resultado eso significa b = true
si condition = false
luego devuelve else result significa b = false