收藏
回答

云函数里云数据库输出limit上限啥时候改成1000的?

1、我原来以为limit最大就是100,今天发现文档里已经改为1000了:

https://developers.weixin.qq.com/miniprogram/dev/wxcloud/reference-sdk-api/database/collection/Collection.limit.html

2、今天亲测可用,把limit设为1000,能输出1000条记录出来,但是超过1000就只能最初输出1000

const res = await db.collection('orders')
    .where({
      _id : _.neq(null)
    })
    .field({
      no: 1
    })
    .limit(1100)
    .get()


3、还有一个文档专门讲如何读取超过100条记录(看来还是按原来100limit来的),使用了Promise多次查询的方法,如下:

https://developers.weixin.qq.com/miniprogram/dev/wxcloud/reference-sdk-api/database/collection/Collection.get.html


4、我再问一个问题,我都是用递归函数来取超过上限的记录的,用文档中的Promise做多次查询,和用递归函数做多次查询,有没有优劣之分?对Promise不太熟悉。还有如果不加orderBy,直接get出来,是否可以确保取第二次取记录和上一次取记录不重复。

最后一次编辑于  2020-03-12
回答关注问题邀请回答
收藏

1 个回答

  • 老张
    老张
    2020-03-13

    4:我一般用触底拉取

    https://developers.weixin.qq.com/community/develop/article/doc/000cc87a7007885df5b862b3d51c13


    2020-03-13
    有用
    回复 9
    • 郑旭东
      郑旭东
      2020-03-13
      哦,你说的场景不同,我这个是指无交互界面的纯后端逻辑中,需要获取一定条件下所有记录。
      2020-03-13
      回复
    • 老张
      老张
      2020-03-13回复郑旭东
      那肯定是你们的业务逻辑有问题,没有你说的这种场景。要不你说个例子。
      2020-03-13
      1
      回复
    • 郑旭东
      郑旭东
      2020-03-13
      哥你太绝对了啊。比如一个供应商招代理,把所有商品共享给代理商,代理商可以二次编辑商品,这样的场景,超过1000个商品很正常吧,这不仅得查出来,还得写进去,更头大
      2020-03-13
      回复
    • 老张
      老张
      2020-03-13回复郑旭东
      看,还是逻辑有问题吧!超过1000个,难道就要一次全取出给代理商?代理商二次编辑商口时,难道一次给他们一页展示2000条商口?
      2020-03-13
      1
      回复
    • 郑旭东
      郑旭东
      2020-03-13
      供应商招到某个代理确定的那一刻,是不是得把所有商品都打上一个标记,或者是复制一份出来给到代理商,商品数据也不是公开的,谁都随便看,是属于某个具体卖家的,确定的那一刻得划到代理名下吧。
      2020-03-13
      回复
    查看更多(4)
登录 后发表内容
问题标签