sql >> Base de Datos >  >> NoSQL >> MongoDB

Cómo proyectar si el campo existe

Ejecute la siguiente canalización de agregación para obtener los resultados deseados:

db.collection.aggregate([
    {
        "$project": {
            "a": 1,
            "resultsOfComputation": {
                "d": { "$gt": ["$resultsOfComputation.d", null] }   
            }
        }
    }
])

Salida de muestra

/* 1 */
{
    "_id" : 1,
    "a" : 1,
    "resultsOfComputation" : {
        "d" : true
    }
}

/* 2 */
{
    "_id" : 2,
    "a" : 1,
    "resultsOfComputation" : {
        "d" : false
    }
}