微信小程序连表查询lookup

已知有两个集合media和users,集合中的字段(users中的)_openid和(media中的)openid值相同

 

小程序页面js中调用云函数getMedia

复制代码
  wx.cloud.callFunction({
      name: 'getMedia',
      data:{sort}
    }).then(res => {
      if(res.result) {
        this.setData({
          mediaData: res.result.list
        })
      }
     return 
    }).catch(err => console.log(err))
复制代码

云函数中连表查询

复制代码
const db = cloud.database();// 云函数入口函数
exports.main = async (event, context) => {
  let {sort} = event;
  return await db.collection('media').aggregate()//连表查询的集合media
  .lookup({
    from: 'users',//需要连表查询的另一个集合users
    localField: '_openid',//集合users中的值相同字段
    foreignField: 'openid',//集合media中值相同字段
    as: 'mediaArr'//为users中连表查询的结果取别名
  }).match({
    sort: sort//匹配要求,筛选
  }).end()
}
复制代码

结束

posted @   yheyi  阅读(93)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具
点击右上角即可分享
微信分享提示