FireDAC.Phys.MongoDBWrapper.TMongoPipeline

De RAD Studio API Documentation
Aller à : navigation, rechercher

System.TInterfacedObjectSystem.TObjectTMongoPipeline

Delphi

TMongoPipeline = class(TInterfacedObject, IMongoCursor)

C++

class PASCALIMPLEMENTATION TMongoPipeline : public System::TInterfacedObject

Propriétés

Type Visibilité  Source Unité  Parent
class public
FireDAC.Phys.MongoDBWrapper.pas
FireDAC.Phys.MongoDBWrapper.hpp
FireDAC.Phys.MongoDBWrapper FireDAC.Phys.MongoDBWrapper


Description

Représente un constructeur de pipeline MongoDB de style "fluent".

Les méthodes clés du constructeur, comme Project, Match ou Group, renvoient des sous-constructeurs pour les étapes de pipeline correspondantes.

Vous pouvez utiliser un objet TMongoPipeline dans les scénarios suivants :

Dans ce scénario, vous pouvez réutiliser l'objet pipeline.
  • Obtenez l'objet pipeline à partir d'une méthode TMongoCollection.Aggregate surchargée, puis transtypez-la en IMongoCursor pour exécuter un pipeline et obtenir un curseur d'ensemble de résultats.

Exemples

Les extraits de code suivants illustrent de quelle manière transmettre une collection dans le pipeline d'agrégation (EN), puis comptent le nombre de documents pour chaque quartier ("borough"). La liste de sortie est triée en fonction du champ count.

Remarque : Pour de plus amples informations, voir le projet exemple MongoDB Restaurants.

Delphi :
 var
  oCrs: IMongoCursor;
  oCrs := FCon['test']['restaurants'].Aggregate()
    .Group
      .Add('_id', '$borough')
      .BeginObject('count')
        .Add('$sum', 1)
      .EndObject
    .&End
    .Sort('{ count: 1 }').&End;
C++Builder :
di_IMongoCursor  oCrs = interface_cast<IMongoCursor>(MongoCon->Databases["test"]->Collections["restaurants"]->Aggregate())
->Group()
      ->Add("_id", "$borough")
      ->BeginObject("count")
        ->Add("$sum", 1)
      ->EndObject()
     ->End()
    ->Sort("{ count: 1 }")->End();

Voir aussi