0
コレクション内のすべてのドキュメントの合計を計算する必要があります。例えば、私は、次の3つの文書を持っている:C#Mongodb。すべてのドキュメントの合計フィールド
_id: 1,
clientId: 1,
cash: 500
_id: 2,
clientId: 1,
cash: 100
_id: 3,
clientId: 2,
cash: 200
だから、私は特定のclientId
ためcash
フィールドを合計します。クライアント1の場合は600
、クライアント2の場合は200
を取得します。 MongoDBで初めて集約フレームワークを使用したのです。私は文書とその他の質問を調べていたが、理解できなかった理由は、なぜgroup
句を使用しなければならないのかということだ。私はそれを必要とするのですか? IイベントがGroup
を使用しようとしましたが、それはコンパイル取得することはできません。
_collection.Aggregate().Match(t=>t.ClientId == 1).Group(null, g => new
{
Total = g.Sum(o => o.Cash)
});
ませ過負荷がメソッド 'グループ' のために2つの引数
PSを取りません。私はキーワードのようなBsonDocument
とそのようなものを使用したくないです。私はより多くのC#の方法でそれを作りたいです。
一般ToListメソッドを()になるまで
集約はDBに実行されますが、私がしたいですどのように私は集約のフレームワークを介してこのタスクを達成することができます参照してください。あなたが提供したコードは、データベースやメモリ上で実行されますか? – user348173
そのコードはデータベースで実行されます。 – Skami
違う変数名を使用することについてお詫びしますが、私はあなたがその考えを得ていると思います。私は@Skamiがdbで実行されている最初のソリューションについて正しいと思います。 – BOR4