动态数组元素 多字段查询 (简单的已经实现,更通用的等你实现)
发布于 5 年前 作者 yong73 1590 次浏览 来自 分享

简单的已经实现,如下。
小程序云上有集合temp:
{item:1001,……}
{item:1002,……}
{item:1003,……}
{item:1004,……}
{item:1005,……}

小程序段有动态数组:arr=[1001,1003……],

要求:查询出集合temp中item等于arr元素的记录。

//code:
//构建一个数组,用于查询的条件。
var arrCondition=new Array()
arrCondition =[]
for (var j = 0; j < d.arr[i].length;j++){
arrCondition.push({ item: arr[j]})

}

//查询语句。
db.collection(‘temp’).where(_.or(arrCondition)).get()
.then(res => {
console.log(“res.data:”, res.data)
}

问题是更通用的怎样实现,例如在下列情况下:

  1. item: _.in([arr[j]]);

  2. item: $.eq([arr[j]]);
    …… ……
    …… ……

     期待有大佬给出解决方法,更期待官方对于此类问题作出优化。
1 回复

查询item为arr的所有记录

where({

    item: _.in(arr)

})

回到顶部