请教下,如何进行MongoDB二维数组查询,最后返回的数据结构,形如:[[],[],[],[],...]
发布于 1 天前 作者 qujinxiong 183 次浏览 来自 分享

请教下,如何进行MongoDB二维数组查询,最后返回的数据结构,形如:[[],[],[],[],…]。 另外,外层数组和内层数组的数据分别存在两个集合中

6 回复

这可以当作一个map结构,利用 for (let [index, value] of result) 可以直接遍历出,简单结构的数据,进行重组读取封装等

@slclub 结构比较复杂,类似于微信的朋友圈列表,文章列表里面套聊天列表。可以说详细点吗?我觉难就难在两个,我把文章和聊天放在了两个集合。

@qujinxiong 文章和聊天,这是两个完全不同的对象吧?为什么要一次性返回?

@winglight 功能需求和微信朋友圈一样

楼主: 放在2个集合的话 第一步 先请求出文章列表 这不难,默认的分页那种取法就行了 取出的文章列表格式应该是 这样的[ {id:1,content:‘body内容’,time:‘时间等’…},…] 第二部将 他们的 ids 取出来 (mongodb 模拟mysql in查询操作) 第三部 根据ids 取出聊天的集合的 记录。 取出后,遍历的时候 按照文章 id放成 talk1 = {id:num,items:[聊天1,聊天2…]} ;talk2={…} 这样话 他们的关系就显而易见了吧。

吧相应的聊天集合 根据id 放在聊天对象的一个属性上就ok了吧

@slclub 非常感谢,但是这个方法极其繁复。数据库设计暂时还没定型,我打算实在找不到好的方法实现,就聊天列表放到文章集合中,做内嵌

回到顶部