MongoDB
 sql >> база данни >  >> NoSQL >> MongoDB

Laravel 5 изпълнява агрегиране с mongodb on where клауза

Използване на тръбопровода за агрегиране, където $ne операторът на заявка за сравнение е в $match тръбопровод:

DB::connection($this->MongoSchemaName)
    ->collection($this->InvoicesTable)
    ->raw(function($collection) use ($customer){
        return $collection->aggregate([
            ['$match' => [
                    'ContactID' => (int)$customer->ContactID,
                    'Type' => 'PAYMENT',
                    'AmountDue' => [ '$ne' => 0 ]
                ]
            ],
            ['$group' => [
                '_id' => '$ContactID',
                'TotalInBaseCurrency' => [
                        '$sum' => ['$multiply' => ['$Total', '$CurrencyRate']]
                    ]
                ]
            ]
        ]);
    })



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Как трябва да внедря тази схема в MongoDB?

  2. Как да предпочитате четения на вторични в MongoDb

  3. Актуализация на MongoDB. Опитвате се да зададете едно поле от свойство на друго

  4. Cosmos DB Aggregation Pipeline несъвместим (Mongo API)?

  5. Стъпки за свързване на MongoDB и Solr с помощта на DataImportHandler