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

Mangosta:obtenga la longitud de la matriz en el modelo

find los resultados solo pueden incluir contenido de los propios documentos, mientras que aggregate puede proyectar nuevos valores que se derivan del contenido del documento (como la longitud de una matriz). Es por eso que necesitas usar aggregate para esto, aunque solo obtenga un documento.

Post.aggregate([{$match: {postId: 5}}, {$project: {upvotes: {$size: '$upvotes'}}}])

La única excepción es $meta operador de proyección para proyectar un $text puntuación del resultado de la consulta.