MongoDB索引中的空值如何排序?

时间:2013-03-07 09:33:29

标签: mongodb

我想以特定的方式(-1,1)对索引进行排序,并希望确保空值位于索引的顶部。我该如何确保这一点?

2 个答案:

答案 0 :(得分:6)

如果要对降序进行排序,并且在结尾处看到null值,那么这将是排序的默认行为。

改变这种行为真的没什么可做的,但是一种能够为你提供所需结果的解决方法是做两个查询而不是一个:

db.Collection.find( { a: null } );
db.Collection.find( { a: { $ne: null } } ).sort( { a: -1, b: 1 } );

答案 1 :(得分:0)

你说过"我只想基本上有一个'如果有一个存在null的话,那就拿一个没有'通过一个查询",db.collection.find()。sort()。limit(1)怎么样 ?