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

Grupo MongoDB por clasificación distinta juntos

Es mejor usar .aggregate() para hacer esto. También es un método directo sobre los objetos de colección en las versiones modernas del controlador:

$result = $db->collection('Profit_and_loss')->aggregate(array(
    array( '$group' => array(
        '_id' => '$entity_id',
        'year' => array( '$max' => '$year' )
    ))
));

El .distinct() El comando solo se ejecuta en un solo campo. Otros formularios requieren una evaluación de JavaScript como ha señalado y se ejecutan considerablemente más lento que el código nativo.