sql >> Database >  >> NoSQL >> MongoDB

MongoDB groupby verschillende sorteer samen

Je kunt beter .aggregate() om dit te doen. Het is ook een directe methode op de collectieobjecten in moderne versies van de driver:

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

De .distinct() commando loopt alleen over een enkel veld. Voor andere formulieren is JavaScript-evaluatie vereist, zoals u hebt opgemerkt, en deze werken aanzienlijk langzamer dan native code.




  1. Mongoid-sessie alleen-lezen maken

  2. Lente JPA PostgreSQL + MongoDB

  3. Meteor, MongoDB krijgen deel van array via abonnement

  4. Hoe een byte[]-afbeelding op te slaan in mongodb voor het Doocr-proces