sql >> Database >  >> NoSQL >> MongoDB

MongoDB-aggregatie met PHP - groeperen op datum

Je kunt die delen projecteren en er vervolgens op groeperen, zodat je op de hele datum kunt groeperen:

$results = $c->aggregate(array(
    array(
      '$project' => array(
          'year' => array('$year' => '$executed' ),
          'month' => array('$month' => '$executed' ),
          'day' => array('$dayOfMonth' => '$executed')
      ),
    ),
    array(
      '$group' => array(
          '_id' => array('year' => '$year', 'month' => '$month', 'day' => '$day'),
          'count' => array('$sum' => 1)
      ),
    ),
    array(
      '$sort' => array(
          '_id.year' => 1,
          '_id.month' => 1,
          '_id.day' => 1
      ),
    ),
    array(
      '$limit' => 30
    )
));

Zoiets zou het lukken om te sorteren op, zoals je zei:$year-$month-$dayOfMonth .



  1. Pymongo retourneert waarden alleen als lijst

  2. mongoose node.js, query met $lt en $gt werkt niet

  3. Groeperen op verschillende velden

  4. [Infographic] Cassandra vergelijken met MongoDB