sql >> データベース >  >> NoSQL >> MongoDB

PHPドライバーを使用したMongoDB集計クエリ

    Javascriptのパラメーターは、それぞれ1つの要素を持つ4つのオブジェクトの配列であり、PHPでは、4つの要素を持つ連想配列(オブジェクト)です。これはJavascriptを表します:

    $result = $c->aggregate(array(
        array(
          '$project' => array(
              'day' => array('$dayOfYear' => '$executed')
          ),
        ),
        array(
          '$group' => array(
              '_id' => array('day' => '$day'),
              'n' => array('$sum' => 1)
          ),
        ),
        array(
          '$sort' => array(
              '_id' => 1
          ),
        ),
        array(
          '$limit' => 14
        )
    ));
    

    さらに、PHP5.4以上を使用している場合は、より単純な配列構文を使用できます。 PHPへの変換は簡単です。中括弧を角かっこに、コロンを矢印に置き換えるだけです。

    $result = $c->aggregate([
      [ '$project' => [ 'day' => ['$dayOfYear' => '$executed']  ]  ],
      [ '$group' => ['_id' => ['day' => '$day'], 'n' => ['$sum' => 1]  ] ],
      [ '$sort' => ['_id' => 1] ],
      [ '$limit' => 14 ]
    ]);
    



    1. $ inには、2番目の引数として配列が必要です。

    2. Tornado + Celery + RabbitMQ + Redisを使用できますか?

    3. MongoDB $ toObjectId

    4. MongoDBでドキュメントを削除する4つの方法