0

したがって、「成績」コレクションの「宿題」タイプのすべてのドキュメントを「生徒」DB (MongoDB) で検索する Ruby スクリプトがあります。

http://api.mongodb.org/ruby/current/file.TUTORIAL.html

私はスコアでソートしてから、学生ID(またはその逆)でソートしようとします:

homeworks.sort(:score, 1).sort(:student_id, 1).to_a

そして、ファイル(「mongo.rb」)を実行すると、学生IDではなくスコア(昇順)でソートされた宿題の出力が得られます...(それらはスクランブルされています)値を切り替えようとすると、次の順序で並べられた配列が得られますstudent_id (昇順) ですが、スコアではありません... (その場合、スコア値はスクランブルされます)

Rubyを使用してmongoで2つの引数で昇順でソートするにはどうすればよいですか??

4

2 に答える 2

2

ドキュメントに従って、試してください

homeworks.sort([[:score, 1], [:student_id, 1]]).to_a
于 2012-11-03T22:36:07.210 に答える
0

これはどう:

c = db['grades']
x = c.find({}, {:sort=>[[:student_id, 1], [:score, 1]]}).to_a

これはirbでうまくいきます。

于 2012-11-04T15:34:39.533 に答える