FireDAC.Phys.MongoDBWrapper.TMongoPipeline
Delphi
TMongoPipeline = class(TInterfacedObject, IMongoCursor)
C++
class PASCALIMPLEMENTATION TMongoPipeline : public System::TInterfacedObject
Inhaltsverzeichnis
Eigenschaften
Typ | Sichtbarkeit | Quelle | Unit | Übergeordnet |
---|---|---|---|---|
class | public | FireDAC.Phys.MongoDBWrapper.pas FireDAC.Phys.MongoDBWrapper.hpp |
FireDAC.Phys.MongoDBWrapper | FireDAC.Phys.MongoDBWrapper |
Beschreibung
Repräsentiert einen MongoDB-Pipeline-Generator im fließenden (sprechenden) Stil.
Sie können ein TMongoPipeline-Objekt in den folgenden Szenarien verwenden:
- Erstellen Sie das Pipeline-Objekt explizit und geben Sie es an die Methode TMongoCollection.Aggregate weiter. In diesem Szenario können Sie das Pipeline-Objekt wiederverwenden.
- Rufen Sie das Pipeline-Objekt aus einer TMongoCollection.Aggregate-Methode ab, und konvertieren Sie es dann in IMongoCursor, um eine Pipeline auszuführen und einen Ergebnismengen-Cursor zu erhalten.
Mit den folgenden Methoden können Sie die Stadien der Pipeline definieren:
Sie können ebenso einige Optionen für Ihre Pipeline definieren.
Beispiele
Das folgende Codefragment zeigt, wie eine Sammlung an die Aggregations-Pipeline (EN) übergeben und dann die Anzahl der Dokumente für jedes Stadtviertel gezählt wird. Die Ausgabeliste ist anhand des Feldes count
sortiert.
Hinweis: Weitere Informationen finden Sie im Beispielprojekt MongoDB Restaurants (EN).
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();