数据库设计技巧 - 复杂的层次

时间:2014-08-11 18:14:08

标签: mysql database

我有一些关于MySQL数据库中复杂层次结构的数据库设计的问题。我将尽力解释结构尽可能简单。

我在一个表中有大量约100种不同类型的相关对象。这些对象是层次结构的一部分,彼此之间具有各种关系。这些层次关系存储在一个单独的表中。

表1

对象A

层次结构表

对象A - >对象父母

表2

对象B - >对象A

到目前为止,这么好。现在问题就开始了。我有许多其他对象/表链接到这些对象(上面的表2)。起初我以为我的查​​询会更容易在这些表中存储三个选定的“主要类型”,因为这将是系统中最常见的查询。

这个策略大部分时间都可以正常工作,但问题是表2和表1之间的连接可以在表1中的任何级别和任何类型上进行,这使得它有点困难。如果我要删除我的重复数据,如果我想优化系统,我将面临非常不可能的查询。

你会如何设计这种结构?

我现在倾向于解决方案是存储表1的“主要父级”,或者甚至存储可以在系统中自动生成主层次结构的json数据。我能想出的解决办法似乎并不好。

0 个答案:

没有答案