2016-08-17 71 views
1

在mangoDB -3.0.7我创建了一个带有2个字段的索引。我可以在这些文件上运行排序当我只给予升序/降序。例如mongodb与多个字段排序

{ a: 1, b: 1 } 

但我当我运行查询像,

{ a: 1, b: -1 } 
{ a: -1, b: 1 } 

我收到以下错误,

Error: error: { 
    "$err" : "Executor error: Overflow sort stage buffered data usage of 33554499 bytes exceeds internal limit of 33554432 bytes", 
    "code" : 17144 
} 

我发现这一点:https://docs.mongodb.com/manual/tutorial/sort-results-with-indexes/#sort-and-index-prefix

我该怎么办这种在MongoDB中排序。 ?如何为此创建索引/任何解决方法?

+0

相关:http://stackoverflow.com/questions/27023622 /溢出排序级缓冲数据使用率-超过内部限 – chridam

回答

0

是,如果要排序这样

{ a: 1, b: -1 } 
{ a: -1, b: 1 } 

以这种方式创建索引你提到的链接是正确的

db.collection.createIndex({ { a: 1, b: -1 } })