本小节,咱们来学一点难的,如何对云数据库进行分页查询
仔细看过开发文档的同学应该都知道:
第一点,云数据库每次最多能够查询100条记录,即使你查询的集合中有超过100条记录;
第二点,云函数通过limit方法可以指定每次需要获取的记录数量,如果你指定为10,就每次只能查询出10条结果,但是你指定为101,也只能返回100条记录。我们可以通过limit函数进行分页查询。
分页之前,我们得先知道集合中总共有多少条符合条件的记录,我们可以使用count操作。
第一步,实例化数据库连接;
第二步,指定要查找哪个集合;
第三步,使用count操作;
第四步,结果中的total字段表示的就是符合查询条件的记录总数
计算出符合查询条件的记录总数之后,我们需要计算我们总共需要分多少次查询,也就是分页的数量。
第一步,设置每页至多获取多少条记录,最小值为1,最大值为100;
第二步,计算分页总数,我们使用总记录数除以每页数量,然后向上取整,就可以知道总共需要查询多少次了。
知道总共需要查询多少次之后,我们现在就可以开始查询了。
第一步,定义一个数组接收和汇总每次查询的记录;
第二步,使用for循环,分批次查询,每次只查一页,也就是说,假设我们每次查100个记录,那么第一次查第一页,也就是获得前1-100,第二次查第二页,也就是获得101-200,以此类推;
第三步,查询语句需要指定查询的是哪个集合;
第四步,一定要加排序语句,这样才能保证我们每次查出来的结果都是按顺序的;
第五步,每次查询都需要跳过之前几次查询过的,这里使用skip操作,参数是跳过多少个,如果我们查了i次,那么说明之前已经查过i-1次了,所以需要跳过(i-1)*MAX_LIMIT次。
第六步,限定每次最多查询多少条记录;
第七步,使用get操作进行查询;
第八步,查询成功之后,将查询结果合并到一个数组中。
循环结束后,我们的feedbacks数组就是符合我们查询条件的所有数据了。
下面,请根据教学视频进行学习和操作
花里胡哨
花里胡哨