场景复现
每次使用get()方法查询数据,最多可以查询100条数据;
因此,如果用户表中有10万条数据,一次性查询所有数据是不可行的;
为了查询所有数据,可以使用分页查询的方式;
配合skip()和limit()每次查询100条数据,直到查询完所有数据为止。
代码实现
async function getData(){
let userList = []; // 所有用户列表
let limit = 100; // 每次查询的数量
let offset = 0; // 偏移量
let {result:{total}} = await db.collection('user').count(); // 总数量
do {
let {result:{data}} = await db.collection('user').skip(offset).limit(limit).get();
userList = userList.concat(data); // 将查询到的数据添加到列表中
offset += limit; // 更新偏移量
} while (offset < total);
console.log(userList);
}