收藏
回答

微信小程序云开发,对象数组条件查询结果没有筛选,全量返回了?

第一种写法:

const db = wx.cloud.database()

const _ = db.command

db.collection('vegetable_list').where({

list:{

kind:'根茎类'

}

}).get({

success: res => {

console.log("res:", res.data)

},

fail: err => {

console.log("error:", err)

}

})

第二种写法:

db.collection('vegetable_list').where({

list:_.elemMatch({

kind:'根茎类'

}) 

}).get({

})

都是全量返回,筛选条件没起作用!求官方同学尽快帮忙解决一下

最后一次编辑于  2020-04-30
回答关注问题邀请回答
收藏

6 个回答

  • 草生
    草生
    2021-06-05

    能教教我你的数组是怎么加进数据库的吗拜托了

    2021-06-05
    有用
    回复 1
  • 
    2020-12-23

    这个问题我解决了,在云函数端,不过解决得有点复杂。

    2020-12-23
    有用
    回复 1
    • lxc
      lxc
      2021-02-02
      请问是怎么解决的?
      2021-02-02
      回复
  • smile de match man
    smile de match man
    2020-09-15
            const db = wx.cloud.database();      
            const _=db.command;
        const $ = db.command.aggregate;
    
    
        db.collection('xxx').aggregate()
          .project({
            list: $.filter({
              input: '$list',
              as'item',
              cond: $.eq(['$$item.kind','根茎类'])
            })
          }).end({
            success(res){
              console.log(res)
            }
          });
    
    2020-09-15
    有用
    回复 1
    • smile de match man
      smile de match man
      2020-09-15
      注意: 小程序基础库2.7.4以上
      2020-09-15
      1
      回复
  • 念
    2020-05-13


    这个可以 https://developers.weixin.qq.com/miniprogram/dev/wxcloud/reference-sdk-api/database/command/aggregate/AggregateCommand.filter.html
    


    2020-05-13
    有用
    回复 1
    • SOMETIMES
      SOMETIMES
      2020-05-13
      好的,我试试
      2020-05-13
      回复
  • vking
    vking
    2020-05-06

    这是之前写的,没研究过elemMatch,你参考下

    2020-05-06
    有用
    回复 1
    • SOMETIMES
      SOMETIMES
      2020-05-06
      问题就是 elemMatch 不起作用,对一个对象数组进行筛选
      2020-05-06
      回复
  • admin
    admin
    2020-05-02

    你要返回什么哦,按照你的条件,就是返回vegetable_list这个集合,所有包含list:{kind:'根茎类'}的记录,res.data是包含完整记录的数组,如果你要某个字段的内容,应该是这样res.data[0].list

    2020-05-02
    有用
    回复 21
    • SOMETIMES
      SOMETIMES
      2020-05-02
      我想筛选 kind = '根茎类' 的数据,过滤掉其他
      2020-05-02
      回复
    • Eigen
      Eigen
      2020-05-02回复SOMETIMES
      楼主解决了没,我也遇的这个问题
      2020-05-02
      回复
    • SOMETIMES
      SOMETIMES
      2020-05-02
      还没有,你帮忙邀请一下大牛回答,我一天只能邀请两个人
      2020-05-02
      1
      回复
    • JokerX
      JokerX
      2020-05-02
      我也遇到了这个问题,我都怀疑是我的数据库数据划分的不够科学= =导致没有办法可以筛选出这种结果
      2020-05-02
      回复
    • admin
      admin
      2020-05-02回复SOMETIMES
      只是要显示LIST数组里的内容吗,可以用WX:IF渲染,我只会这个
      2020-05-02
      回复
    查看更多(16)
登录 后发表内容
问题标签