收藏
回答

云开发数据库如何实现多对多关系查询?

我有一个活动报名的小程序,一个用户可以报名多个活动,一个活动也可以被多个用户报名;还有收藏功能,也是如此请问该如何设计?

我只想到了2种:

第一种:

acts活动表 [ {

_id: 123, title: '...',

likedUsers: ['用户openId1' , '用户openId2'....],

joinedUsers: ['用户openId1' , '用户openId2'...],

......

}]

users用户表 [

{ _id: 1234, openId: '...'},

......

]

这样如果我要查询某个用户参加了多少活动,都有哪些活动,感觉有点而且性能不好,而且比较费劲

第二种:

acts活动表 [ { _id: 123, title: '...', ...} ......]

userJoinActs: [ { _id: 123, openId: 'abc', actId: '123' } ]

users用户表 [ { _id: 1234, openId: '...', ......} ......]

但是这种如何多对多联表查询呢?



回答关注问题邀请回答
收藏

2 个回答

  • showms
    showms
    2023-07-25

    第一种貌似会有并发问题,操作时得加事务

    第二种可以用lookup多表关联查

    2023-07-25
    有用
    回复 1
    • radio
      radio
      发表于移动端
      2023-07-26
      一般的开发中用哪个?我没有小程序开发经验。自己试着做做。
      2023-07-26
      回复
  • 跨商通
    跨商通
    2023-07-25

    第一种。

    2023-07-25
    有用
    回复
登录 后发表内容