请教大家一个数据库设计的问题
发布于 8 年前 作者 lzszone 5336 次预览 最后一次回复是 8 年前 来自 问答
我在维护一个论坛,数据库打算更换到mongodb, 然后遇到了这样一些问题 查询大概是这样的步骤:
数据表T, 数组A[objectid关联 表T]
1.筛选T得到结果1;
2.从数组A中拓展得到结果2;
3.合并结果1结果2,得到结果3;
4.筛选排序结果3,得到最终结果;
第一个问题: 这样的查询MONGO怎么实现? 第二个问题: 在aggregate中如何返回这种结果(分页)
{
length: x,
documents: [
doc1,
...
]
}
9 回复
。。。。。
第一个,看不懂。第二个,mongodb做分页,网上有各种方案。length需要单独查询一次。
不明觉厉没有DBA还迁移到Mongodb请问有什么好处?
需要在 T 中对应的 objectId 做 ref,参考 mongoose population
分页是有 skip/limit 方法的,但是 length 应该指的是总数 count? 这个就需要再查一次了,mongoose 提供 count 方法
选择mongodb 的时候设计思想需要变一变,尽量使用反范式化设计
From Noder
因为mongodb 本身是面向文档的
From Noder
@Matrixbirds no,没有任何明显的好处,原先用的arangodb,然后后一定概率假死,解决不了,最近做restful,整体重构,索性就换掉了, 另一方面也是自己想折腾一下吧
@rrbe , @TimLiu1 谢二位,昨天我发现这个问题了… 的确是思想没有转变过来…还是本人差点火候呀…
所说的数据库一般隐藏了一个前缀“关系型”,就是RDBMS最前那个R