Collection.get / Query.get

获取集合数据,或获取根据查询条件筛选后的集合数据。

如果没有指定 limit,则默认最多取 20 条记录。

如果没有指定 skip,则默认从第 0 条记录开始取,skip 常用于分页,例子可见第二个示例代码。

如果需要取集合中所有的数据,可以参考第三个示例代码

函数签名如下:function get(): Promise

返回值说明

Promise 的 resolve 和 reject 的结果定义如下:结果说明resolve查询的结果,Result 定义见下方

reject失败原因

Result 说明

Promise resolve 的结果 Result 是一个如下结构的对象:字段类型说明dataArray查询的结果数组,数据的每个元素是一个 Object,代表一条记录

示例代码 1

获取我的待办事项清单

Promise 风格const cloud = require('wx-server-sdk')

cloud.init()

const db = cloud.database()

exports.main = async (event, context) => {

return await db.collection('todos').where({

_openid: 'xxx' // 填入当前用户 openid

}).get()

}

示例代码 2:分页取数据

获取我的第二页的待办事项清单,假设一页 10 条,现在要取第 2 页,则可以指定 skip 10 条记录const cloud = require('wx-server-sdk')

cloud.init()

const db = cloud.database()

exports.main = async (event, context) => {

return await db.collection('todos')

.where({

_openid: 'xxx', // 填入当前用户 openid

})

.skip(10) // 跳过结果集中的前 10 条,从第 11 条开始返回

.limit(10) // 限制返回数量为 10 条

.get()

}

示例代码 3:取集合所有数据

获取集合中的所有待办事项清单:因为有默认 limit 100 条的限制,因此很可能一个请求无法取出所有数据,需要分批次取:const cloud = require('wx-server-sdk')

cloud.init()

const db = cloud.database()

const MAX_LIMIT = 100

exports.main = async (event, context) => {

// 先取出集合记录总数

const countResult = await db.collection('todos').count()

const total = countResult.total

// 计算需分几次取

const batchTimes = Math.ceil(total / 100)

// 承载所有读操作的 promise 的数组

const tasks = []

for (let i = 0; i < batchTimes; i++) {

const promise = db.collection('todos').skip(i * MAX_LIMIT).limit(MAX_LIMIT).get()

tasks.push(promise)

}

// 等待所有

return (await Promise.all(tasks)).reduce((acc, cur) => {

return {

data: acc.data.concat(cur.data),

errMsg: acc.errMsg,

}

})

}

微信小程序获取云服务器数据,微信小程序云开发服务端数据库API 获取集合数据...相关推荐

  1. 视频教程-雪狐CentOS7云服务器部署微信小程序商城系统(宝塔面板)-微信开发

    雪狐CentOS7云服务器部署微信小程序商城系统(宝塔面板) 1.多年开发和授课经验. 2.精通PHP.前端.Android.iOS等开发技术. 3.希望能将自己所学教给学生. 刘安良 ¥12.00 ...

  2. 最详细的【微信小程序+阿里云Web服务】开发部署指引(四):搭建服务端数据库

    文章目录 前言 一.连接主机数据库 二.创建数据表结构 三.准备测试数据 专题文章链接 前言 做完了前面的注册申请工作,今天我们开始进行程序的开发. 这篇文章,我们要完成的是服务端数据库表的创建. 一 ...

  3. 2023年微信小程序获取手机号授权登录注册详细教程,包含服务端教程

    前言 小程序中有很多地方都会用到用户的手机号,比如登陆注册,填写收货地址等等.有了这个组件可以快速获取微信绑定手机号码,无须用户填写. 网上大多数教程还是往年的,而微信官方的api已做了修改.本篇文章 ...

  4. 阿里云进阶课程三——基于云服务器构建微信公众号管理系统

    基于阿里云服务器构建微信公众号管理系统 准备工作 阿里云服务器镜像配置 FileZilla和终端工具安装 下载微擎压缩包 微擎的安装和配置 在云服务器上配置微擎文件 设置数据库信息 云服务器上安装微擎 ...

  5. 阿里云服务器能做小程序吗

    阿里云服务器对做小程序,app端,电脑pc端支持,也非常好用,绝大多数都认为阿里云的用起来更方便. 阿里云服务器对建网站,运行游戏等都是支持的. 阿里云服务器从选配置----服务器控制台使用----- ...

  6. 公司搭建企业官网流程域名、云服务器和建站程序

    企业网站建站流程以阿里云为例,不仅提供云服务器.网站建设和域名业务,还提供公司注册及资质办理的业务,新手站长网来详细说下使用阿里云搭建企业网站的全流程,可选两套方案: 阿里云搭建企业网站全流程 本文是 ...

  7. 基于弹性云服务器的昇腾AI应用开发随笔【与云原生的故事】

    什么是弹性云服务器? 先来说说云服务器(Elastic Cloud Server),云服务器是具有完整硬件.操作系统.网络功能,并且运行在一个完全隔离环境中的计算机系统.云服务器具有弹性.按需获取的特 ...

  8. 云服务器能干什么用?云服务器使用场景列举

    全民上云,云服务器买来可以用来做什么?云服务器吧分享云服务器使用场景列举,一般来讲,很多同学购买云服务器是用来建站.OA系统.ERP系统.搭建邮件服务器.爬虫.小程序服务器等应用场景: 云服务器是使用 ...

  9. 华为云服务器默认密码怎么修改,云服务器怎么修改登录密码

    云服务器怎么修改登录密码 内容精选 换一换 本节为您介绍如何在本机使用远程登录工具MSTSC登录Windows弹性云服务器.弹性云服务器状态为"运行中".如果弹性云服务器采用密钥方 ...

最新文章

  1. 一种清除windows通知区域“僵尸”图标的方案——Windows7系统解决方案
  2. 【FFmpeg】ffmpeg工具源码分析(三):分配过滤器内存(宏GROW_ARRAY)详解
  3. java公寓管理系统设计与实现_学生公寓(宿舍)管理系统的设计与实现(论文范文, jspjava).docx_蚂蚁文库...
  4. 百果园付凌峰:线上单月 1.2 亿背后的数据化运营
  5. 寄存器(内存访问)---汇编学习笔记
  6. Python之numpy库
  7. 自定义jstl标签库
  8. 下采样downsample代码
  9. git的安装与使用(一)--windows平台 .
  10. 工业以太网交换机几点常见故障解析
  11. redis系列:分布式锁
  12. life game c语言,c++生命游戏源码
  13. Arc076_E Connected?
  14. ubuntu server 下使用subversion的总结【原创】
  15. 配置druid的过程以及问题
  16. Java使用模板打印文档记录
  17. IDEA 找不到或无法加载主类
  18. syslinux和grub引导linux,syslinux引导GRUB4DOS
  19. 《大数据之路-阿里巴巴大数据实践》读书笔记
  20. 炉石传说游戏系统拆解

热门文章

  1. html上传优酷视频,如何将视频发布到自己的企业网站上?
  2. 华为5G手机,国内首款5G手机,预价7000元左右
  3. C语言 用if语句实现选择结构
  4. 2022年中小企业精选产品/方案今日颁奖 华为荣获11项大奖
  5. C#枚举体 C语言实验——输入数字星期,输出英文
  6. python使用print()换行与不换行
  7. 阿里云盘 Mac 客户端测试版 v2.1.8
  8. 开发消费Linux桌面系统困难重重
  9. MySQL创建只读用户
  10. 一文看懂新冠肺炎国际疫情现状局势