3

{'a':x、'b':y}のようなドキュメントがたくさんあるとします。xとyが整数であると仮定します。どうすれば次のようなことができますfind().sort({'a'/'b'})か?

4

4 に答える 4

1

2つのフィールドを比較するクエリも実行できないため、これが可能だとは思いません($ whereを使用して遅くなるjavascript関数を指定しないと)。代わりに、比率をドキュメント内に個別に保存してから、その新しいフィールドで並べ替える必要があると思います。

于 2011-02-24T20:58:40.153 に答える
1

a/b の結果である 3 番目のフィールドを追加して、それで並べ替えることができます。

ドキュメントは次のようになります。

{'a' : x , 'b' : y, c : z} // z = x/y

そして、「c」でソートします:

find().sort({c : 1})
于 2011-02-24T20:59:27.950 に答える