javascript - MongoDb $slice 不工作

标签 javascript node.js mongodb

我正在尝试使用 MongoDB 中的聚合函数获取一些记录, 但它显示以下无效运算符 $slice:

db.getCollection('test').aggregate( [
    { $match: { 'subjectId': '123' } }, 
    { $sort: { 'assessmentDate': -1 } }, 
    { $group: { '_id': '$area', 'docs': { $push: "$$ROOT" } } },  
    { $project: { docs: { $slice: ["$docs", 1, 1]   }  }  }, 
])

Error("Printing Stack Trace")@:0()@src/mongo/shell/utils.js:37([objectArray])@src/mongo/shell/collection.js:866
@(shell):1
uncaught exception: aggregate failed: {
    "errmsg" : "exception: invalid operator '$slice'",
    "code" : 15999,
    "ok" : 0
}

MongoDB 版本 3.0.9

最佳答案

要使用 $slice 我们应该使用 3.2.x 以上的 mongoDB 版本, 可以在 changelog 上找到更改日志.

$slice 的文档 documentation

关于javascript - MongoDb $slice 不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42106842/

相关文章:

javascript - 我在哪里可以找到 socket.io 1.0 的工作示例?

mongodb - 合并 RDBMS 和 NoSQL 数据库

javascript - 你如何在不使用 npm 包的情况下编写一个普通的 nodejs 路由器

ruby-on-rails - Rails 3.2.11 Nodejs 符号查找错误

mongodb - 您如何使用 Mongoose 进行更多高级查询?特别是使用 $or 的查询

mongodb - 删除 MongoDB 集合中的数据但保留索引的更好方法

javascript - PDF 的 <object> 阻止下拉菜单

javascript - 如何知道在包含多个数据的chart.js条形图上单击了哪个条形?

javascript - 如何在NodeJS中从hmacsha1生成Node JS签名代码

javascript - 如何将自定义 html 标签传递给 jquery-confirm?