1

コレクションがあり、ビュー+いいねが100を超えるドキュメントを返したいのですが、マングースメソッドを使用してそれを行うにはどうすればよいですか?

4

1 に答える 1

2

これは、マップなしでmongodbで検索できる標準のクエリではありません。コレクション全体を縮小してください。

これは、mongooseを使用してmap-reduceクエリを実行する方法に関するチュートリアルです(実際には、基盤となるnode-mongodb-nativeドライバーを使用しているように見えます):http ://wmilesn.com/2011/07/code/how-to-map- reduce-with-mongoose-mongodb-express-node-js /

ただし、マングースには、この場合に役立つトリックがあります。各または操作の合計スコアでフィールドを更新するミドルウェアを作成するだけです。このアプローチの利点の1つは、この結合されたフィールドにインデックスを作成し、map-reduceよりもはるかに高速なルックアップを実行できることです。save()update()

このミドルウェアページまたはプラグインページは、ドキュメントを保存するたびにフィールドschema.pre('save', ...)を自動的に更新するために使用できるページを示しています。totals次に、合計フィールド>100で通常のクエリを実行できます。

于 2012-08-02T12:58:41.677 に答える