インデックスを特定の方法 (-1、1) で並べ替え、null 値がインデックスの一番上になるようにしたいと考えています。どうすればこれを保証できますか?
質問する
7818 次
2 に答える
7
降順で並べ替えていてnull
、最後に値が表示されている場合、それが並べ替えの既定の動作になります。
その動作を変更するためにできることはあまりありませんが、探している結果が得られる回避策は、1 つではなく 2 つのクエリを実行することです。
db.Collection.find( { a: null } );
db.Collection.find( { a: { $ne: null } } ).sort( { a: -1, b: 1 } );
于 2013-03-07T16:28:49.340 に答える
0
あなたは「基本的に「nullが存在する場合は取得し、そうでない場合は取得しない」というクエリを1回実行したい」と言いましたが、 db.collection.find().sort().limit(1) はどうですか?
于 2016-03-13T10:42:29.800 に答える