微信小程序开发文档 SDK数据库 Command·查询·比较操作符

2024-02-25 开发教程 微信小程序开发文档 匿名 3

Command.eq(value: any): Command

支持端:小程序 , 云函数 , Web

查询筛选条件,表示字段等于某个值。eq 指令接受一个字面量 (literal),可以是 number, boolean, string, object, array, Date。

参数

value: any

返回值

Command

使用说明

比如筛选出所有自己发表的文章,除了用传对象的方式:

const openID = 'xxx'
db.collection('articles').where({
_openid: openID
})

还可以用指令:

const _ = db.command
const openID = 'xxx'
db.collection('articles').where({
_openid: _.eq(openid)
})

注意 eq 指令比对象的方式有更大的灵活性,可以用于表示字段等于某个对象的情况,比如:

// 这种写法表示匹配 stat.publishYear == 2018 且 stat.language == 'zh-CN'
db.collection('articles').where({
stat: {
publishYear: 2018,
language: 'zh-CN'
}
})
// 这种写法表示 stat 对象等于 { publishYear: 2018, language: 'zh-CN' }
const _ = db.command
db.collection('articles').where({
stat: _.eq({
publishYear: 2018,
language: 'zh-CN'
})
})

Command.neq(value: any): Command

支持端:小程序 , 云函数 , Web

查询筛选条件,表示字段不等于某个值。eq 指令接受一个字面量 (literal),可以是 number, boolean, string, object, array, Date。

参数

value: any

返回值

Command

使用说明

表示字段不等于某个值,和 eq 相反


Command.lt(value: any): Command

支持端:小程序 , 云函数 , Web

查询筛选操作符,表示需小于指定值。可以传入 Date 对象用于进行日期比较。

参数

value: any

返回值

Command

示例代码

找出进度小于 50 的 todo

const _ = db.command
db.collection('todos').where({
progress: _.lt(50)
})
.get({
success: console.log,
fail: console.error
})

Command.lte(value: any): Command

支持端:小程序 , 云函数 , Web

查询筛选操作符,表示需小于或等于指定值。可以传入 Date 对象用于进行日期比较。

参数

value: any

返回值

Command

示例代码

找出进度小于或等于 50 的 todo

const _ = db.command
db.collection('todos').where({
progress: _.lte(50)
})
.get({
success: console.log,
fail: console.error
})

Command.gt(value: any): Command

支持端:小程序 , 云函数 , Web

查询筛选操作符,表示需大于指定值。可以传入 Date 对象用于进行日期比较。

参数

value: any

返回值

Command

示例代码

找出进度大于 50 的 todo

const _ = db.command
db.collection('todos').where({
progress: _.gt(50)
})
.get({
success: console.log,
fail: console.error
})

Command.gte(value: any): Command

支持端:小程序 , 云函数 , Web

查询筛选操作符,表示需大于或等于指定值。可以传入 Date 对象用于进行日期比较。

参数

value: any

返回值

Command

示例代码

找出进度大于或等于 50 的 todo

const _ = db.command
db.collection('todos').where({
progress: _.gte(50)
})
.get({
success: console.log,
fail: console.error
})

Command.in(value: any[]): Command

支持端:小程序 , 云函数 , Web

查询筛选操作符,表示要求值在给定的数组内。

参数

value: any[]

返回值

Command

示例代码

找出进度为 0 或 100 的 todo

const _ = db.command
db.collection('todos').where({
progress: _.in([0, 100])
})
.get({
success: console.log,
fail: console.error
})

Command.nin(value: any[]): Command

支持端:小程序 , 云函数 , Web

查询筛选操作符,表示要求值不在给定的数组内。

参数

value: any[]

返回值

Command

示例代码

找出进度不是 0 或 100 的 todo

const _ = db.command
db.collection('todos').where({
progress: _.nin([0, 100])
})
.get({
success: console.log,
fail: console.error
})