我有一个mongodb集合,项目价格按日期排列。
<li ng-repeat="item in ctrl.getItems()" ng-init="rank = $index">
[$index: {{$index}}]
{{item}}<br/>
<label>
Move to
<input type="number" ng-model="rank"/>
</label>
<button type="button" ng-click="ctrl.moveItem($index, rank)">
Ok
</button>
</li>
有些商品的最后几个月没有价格。
我应该收集每件商品的最后价格。
我创建了查询:
{ "_id" : { "item" : "eggs", "date" : "2018-03-02" }, "price" : 2.20 }
{ "_id" : { "item" : "meat", "date" : "2018-03-02" }, "price" : 12.12 }
{ "_id" : { "item" : "bread", "date" : "2018-03-02" }, "price" : 3.45 }
{ "_id" : { "item" : "eggs", "date" : "2018-03-03" }, "price" : 2.30 }
{ "_id" : { "item" : "bread", "date" : "2018-03-03" }, "price" : 3.35 }
但结果是:命令失败,错误16819:'排序超出内存限制104857600字节,但没有选择进入外部排序。中止操作。传递allowDiskUse:true以选择加入。
我不想设置allowDiskUse:true。看起来mongo重新安排了磁盘上的总价格收集。
有人知道没有DiskUse的解决方案吗?