我正忙于构建一个结构如下的数据库:
名为文章的表与名为field_groups的表具有一对多关系。field_groups与名为field_group的表有一对多的关系,但是,field_groups需要一个树结构,其中每个字段都可以是另一个字段组的父字段或子字段。
我知道用于处理层次关系的嵌套set模型,但我不确定它在这种情况下是否能很好地工作。我不仅需要维护节点的层次结构,还需要检索每个节点的相关数据,如果不遍历和查询每个单独的节点(理论上有无限数量的节点),我就看不到这一点。
出于这个原因,我正在考虑使用mongoDB或类似的语言,因为我相信它会很好地处理这种情况,值得一提的是,field_groups只会在其父文章的上下文中被查询。我知道对mongoDB的一些不同的批评,所以我不是在这里征求意见,在致力于另一种DB解决方案之前,我真正想知道的是-在mySQL中有一种已知的方法来处理这种情况吗?
发布于 2013-07-10 23:28:09
在字段中需要一个field_group_id,它是field_groups表的外键,在field_groups表中需要一个article_id,它是文章表的外键。另外,在field_groups表中需要一个parent_id,它将是field_groups表的外键。如果您在数据库表中具有此结构,则可以使用带有连接的查询来获取数据。你可以通过在你的MySQL之上使用一个ORM来使事情变得更简单。当然,您可以切换到MongoDB,我只是想向您展示,在MySQL中可以解决您的问题。
https://stackoverflow.com/questions/17574403
复制相似问题