問題タブ [aggregation-framework]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
3371 参照

php - $match を使用して、PHP MongoDB Aggregation Framework を使用して日付でフィルター処理する

$groupにパイプする前に、集計フレームワークでPHP MongoDBドライバーを使用していくつかの日付をフィルタリングしようとしましたが、一致は日付のフィルタリングを行っていませんが、文字列とintをフィルタリングする場合は完全に機能します.

これが私のパイプライン配列とコードです:

$results = $this->collection->aggregate($ops);

これにより、'whenField' が過去 3 時間以内のコレクション内のすべてのドキュメントが返されるはずですが、コレクション内のすべてのドキュメントが返されます。次に、「$gt」を「$lt」に切り替えると、コレクション内のすべてのドキュメントも返されます。これとまったく同じ一致配列をフィルターとして使用find($filter)して使用したところ、正しくフィルター処理されました。日付の比較は集計フレームワーク $match と互換性がありませんか、それとも何らかのエラーが発生しましたか?

0 投票する
1 に答える
1600 参照

mongodb - 集約フレームワーク - Unix タイムスタンプを ISODate に変換する

このようなオブジェクトを含むコレクションがあり、ts プロパティに Unix タイムスタンプが含まれているとします。

Aggregation Framework を使用して ts フィールドを ISODate に変換する方法はありますか?

0 投票する
1 に答える
1059 参照

php - MongoDb PHP ドライバー - readPreference を使用した集計クエリ?

PHP ドライバー 1.3.2 と mongodb 2.2 を使用して、readPreference を使用して、レプリカ セット内のセカンダリの 1 つに集計クエリを送信しようとしています。何を試しても、集計クエリはプライマリ サーバーで実行されます。

基本的な例:

有効MongoLogにして、次の結果を得ました。

集計方法は次を示します。REPLSET INFO: - connection: type: PRIMARY

代わりに find を使用すると、次のように表示されます。REPLSET INFO: - connection: type: SECONDARY

これはphpドライバーのバグですか?他の誰かがこれに遭遇しますか?Jiraのバグとして追加する前に、SOに投げると思いました。

0 投票する
1 に答える
811 参照

mongodb - MongoDB の集計フレームワークを使用した移動平均

日付または期間 (2013-01) のいずれかのプロパティを持つドキュメントのコレクションがある場合、MongoDB の集計フレームワークを使用して移動平均統計 (3-m 平均など) を計算する最良の方法は何ですか?

0 投票する
1 に答える
521 参照

mongodb - カウント付きの同じコレクションに対する MongoDB クエリ

コレクションの「詳細」は 1 つしかありません。異なるエイリアスでクエリで 2 回使用されています。Mongo にはエイリアスがないので、mapreduce で結果が得られると思います。アンワインドで集計も試しましたが、コレクションではなくフィールドでアンワインドされます。集計または mapreduce に関するヘルプ。

SQL クエリ:

次のように出力されます。

私が試してみました:

$group と $match で行き詰まっています。

0 投票する
1 に答える
3762 参照

java - mongodbjavaドライバーは集約/投影操作でidフィールドを非表示にします

java mongodbドライバーを使用して集計操作を実行しており、ドキュメントの例(以下に貼り付け)に従いました。これによると、_idフィールドは非表示にする必要があります。ただし、私自身のコードとこの例の出力の経験では_id、射影値を0に設定してもフィールドは非表示になりません(mongoシェルから機能します)。これがmongodbjavaドライバーのバグであるかどうか誰かが知っていますか?それとも私は何か間違ったことをしていますか?

0 投票する
1 に答える
92 参照

mongodb - MongoDBで別のフィールドによってグループ化された1つのフィールドの数を見つける方法は?

プロジェクトのデータベースがあると仮定します。それは3つのフィールドで構成されています:1。プロジェクト名2.そのプロジェクトで働いている人の名前3.人の役割。

各プロジェクト内で計算したいのですが、一人一人にいくつの役割があります!以下はサンプルです。

これは次の表の結果です

0 投票する
1 に答える
5980 参照

mongodb - MongoDB アグリゲーション パイプライン 複数のグループによるパイプラインの複雑化

これが私のドキュメント構造です:

私は MongoDB フレームワークを本当に楽しんでいますが、このグループ化パイプラインに問題があり、まだ別のコレクションに $out できないためです。このマルチグループ パイプラインを実行できます。

これにより、長さでグループ化された一意の $cdr3_seq_aa の数がわかります。

しかし、私がやりたい最初の操作は、ドナーごとのグループ化です。したがって、最初に、各ドナー間で一意の cdr3_seq_aa 文字列がいくつあるかを知ることができます。次に、長さでグループ化し、その長さでグループ化された文字列の数を数えたいと思います。

0 投票する
2 に答える
494 参照

mongodb - リチウムコマンドへのmongodbクエリ

ここでは、特定のユーザーが存在するグループ名を見つけています。mongodbシェルで正しい結果が得られています。今、私はそれをリチウムフレームワークで使用する必要があります。コマンドを手伝ってください。コレクションの構造については、次のリンクを参照してください:http: //pastebin.com/P8uMw9cj

0 投票する
2 に答える
22122 参照

mongodb - MongoDB:集約フレームワーク:フィールド間の$ match

2つのドキュメントを含むテストコレクションがあります。

集約フレームワークでは、aがbより大きいドキュメントのみを取得したいと思います。$ gtは、フィールドではなく引数の値のみを取得します。

アイデアはありますか?

前もって感謝します

よろしくお願いします