当前位置:K88软件开发文章中心编程全书微信小程序 → 文章内容

微信小程序云开发服务端数据库API 查询指令

减小字体 增大字体 作者:佚名  来源:网上搜集  发布时间:2019-1-15 15:03:29

由 Carrie 创建, 最后一次修改 2018-11-15 db.command.and查询指令,用于表示逻辑 "与" 的关系,表示需同时满足多个查询筛选条件示例代码如筛选出进度大于 50 小于 100 的 todo:流式写法:const cloud = require('wx-server-sdk')cloud.init()const db = cloud.database()const _ = db.commandexports.main = async (event, context) => { try { return await db.collection('todo').where({ progress: _.gt(50).and(_.lt(100)) }).get() } catch(e) { console.error(e) }}前置写法:const cloud = require('wx-server-sdk')cloud.init()const db = cloud.database()const _ = db.commandexports.main = async (event, context) => { try { return await db.collection('todo').where({ memory: _.and(_.gt(50), _.lt(100)) }).get() } catch(e) { console.error(e) }}db.command.or查询指令,用于表示逻辑 "或" 的关系,表示需同时满足多个查询筛选条件。或指令有两种用法,一是可以进行字段值的 “或” 操作,二是也可以进行跨字段的 “或” 操作。字段值的 “或” 操作指的是指定一个字段值为多个值之一即可:字段值的或操作:示例代码如筛选出进度大于 80 或小于 20 的 todo:流式写法:const cloud = require('wx-server-sdk')cloud.init()const db = cloud.database()const _ = db.commandexports.main = async (event, context) => { try { return await db.collection('todo').where({ progress: _.gt(80).or(_.lt(20)) }).get() } catch(e) { console.error(e) }}前置写法:const cloud = require('wx-server-sdk')cloud.init()const db = cloud.database()const _ = db.commandexports.main = async (event, context) => { try { return await db.collection('todo').where({ memory: _.or(_.gt(80), _.lt(20)) }).get() } catch(e) { console.error(e) }}跨字段的 “或” 操作指条件 “或”,相当于可以传入多个 where 语句,满足其中一个即可,示例:跨字段的或操作:示例代码如筛选出进度大于 80 或已标为已完成的 todo:const cloud = require('wx-server-sdk')cloud.init()const db = cloud.database()const _ = db.commandexports.main = async (event, context) => { try { return await db.collection('todo').where(_.or([ { progress: _.gt(80) }, { done: true } ])) } catch(e) { console.error(e) }}

微信小程序云开发服务端数据库API 查询指令