MongoDB
 sql >> Database >  >> NoSQL >> MongoDB

mongodb aggregate per ottenere la lunghezza del primo array/elenco nidificato

Come ho detto nei commenti , un $unwind fase seguita da un $project &$size risolverà il tuo problema:

[
   {
        $unwind : "$tags"
   },
   {
        $project: {
               tags_count: {$size: "$tags"}
        }
   }
]

mi dà questo documento:

{
    tags_count: 3
}

Questo risponde alla tua nuova domanda:

[
    {
         $unwind : "$properties"
    },
    {
         $unwind : "$properties.has_a"
    },
    {
         $group: {
             _id: null,
             count: {
                 $sum: 1
             }
          }
    }
]

resi seguenti:

{ count: 2}