$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