对于mongodb非关系型数据库来说,是不是不建议使用多表查询?

问题:对于mongodb非关系型数据库来说,是不是不建议使用多表查询?

阅读 3.3k
1 个回答

没有绝对。Mongo难的地方就在于没有范式约束,数据模型设计需要根据需求灵活多变,初学者往往容易在上面犯错误。例如同样是作者与书的关系,可以设计出不同的数据模型:

// 作者
{
    _id: 1,
    name: '张三',
    birthday: '1988-10-10'
}
// 书
{
    isbn: '...',
    title: '...',
    author: 1
}

或者

{
    isbn: '...',
    title: '...',
    author: {
        name: '张三',
        birthday: '1988-10-10'
    }
}

如果作者信息经常变化,我可能会选择第一种设计;反之可能选择第二种。显然第二种在查询的时候效率高,在涉及作者信息修改的时候效率就低了。那么到底读的效率对你更重要还是修改的效率对你更重要?这将决定你采用哪种设计。对应的到底是查单表还是查多表也就相应的改变了。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题