我正在编写一个查询来查找其用户名以给定前缀开头的所有用户。我只希望查询最多返回 10 个项目。我现在的查询是
User.scan('username')
.beginsWith(req.query.prefix)
.limit(req.query.limit)
.exec((err, users) => {
...
});
在更仔细地阅读了 dynamoose文档.limit()
之后,我意识到限制是它检查的表条目数,而不是它返回的条目数。因此,如果我有 10 个用户,其中 5 个用户的用户名以“m”开头,则类似的查询query: { prefix: 'm', limit: 5}
可能会返回 0 个项目。
我知道我可以查询数据库中的所有用户,然后只返回其中的一些,但它是不可扩展的。如何查询数据库,以便在找到 10 个匹配项时停止查看表?