微信小程序数据库一次查询多个条件的方法
解决了一个小问题
// 例如我的数据为以下 { _id:12333,_openid:myopenid,question:Balabala....} { _id:12666,_openid:myopenid,question:Balabala....} { _id:12777,_openid:other2openid,question:Balabala....} { _id:12788,_openid:other1openid,question:Balabala....} { _id:12799,_openid:other3openid,question:BalDDala....} { _id:13009,_openid:other4openid,question:BalDDala....}
这时我想要查询 我的 myopenid 所有的数据,并外加两条明确的 _id: ‘12777’ or ‘12788’
经过查阅,最终代码如下
const _ = db.command db.collection(database).where(_.or([ { _openid : myopenid}, { _id: _.in([12777,12788])} // 存放 需要的id ]) ).orderBy(addDate,asc).get()
查询结果
data: [ {_id:12333,_openid:myopenid,question:Balabala....} // myopenid {_id:12666,_openid:myopenid,question:Balabala....} // myopenid {_id:12777,_openid:other2openid,question:Balabala....} // _id: 12777 {_id:12788,_openid:other1openid,question:Balabala....} // _id: 12788 ]
_.or 可以用来界定多个查询条件
通常搭配其他操作符使用
where({ progress : _.gt(80).or(_.lt(20)) })
也可以使用数组的方式多值查询
_.or([value1,value2]) ---------------------- let arr = [value1,value2] _.or(arr)
_.in 可以用来指定查询的值为指定的值
let arr = [value1,value2] _.in(arr)
参考文献
[1] :
[2] :
上一篇:
uniapp开发微信小程序-2.页面制作