猫鼬/ typegoose根据开始和结束索引获取数组

时间:2020-07-30 00:04:51

标签: mongodb typescript mongoose mongodb-query typegoose

有没有办法在mongo db级别上获取数组切片?我正在尝试执行以下操作:Model.find({filter:option},startindex,endindex)。目前,我发现的唯一选择是执行以下操作:

let result = await Model.find({filter: option});
returh result.slice(startIndex, endIndex)

不幸的是,这不起作用,因为我每次都必须提取完整记录。如果我可以在mongo级别上做到这一点,那将很棒。谢谢您的帮助!

更新: 经过进一步研究,我找到了可能的解决方案:

Model.find({filter: option}).skip(skip).limit(limit);

使用这种方法,我似乎可以在mongo db中对文档数组进行切片。如果您还有其他想法,请告诉我。谢谢!

1 个答案:

答案 0 :(得分:1)

据我所知,没有一种方法可以从文档中获取数组的一部分,但是有select

PS:skip跳过查询找到的第一份文档,而limit限制查询返回的数量