2014-10-29 61 views
0

我有一个数据库与表A,B,C和D(所有一对多关系)。 A有许多B,B有很多C和C有很多D.现在我想添加另一个表Z.表Z将有许多A,并且表A可以是递归到另一个A的父项。查询多个连接或添加额外的列

现在,如果我想要查询所有与所有与另一个A具有相同Z的A有关的D,我必须得到Z的id并查询所有关系。如果表D有一个表Z为ID的列,它会更快吗?我只能查询ID为Z的所有D,比查询所有关系要快吗?这样做是正确的吗?

A就像一个用户,Z就像一个组,D可以是一个帖子。如果我想让所有用户在同一组中的所有帖子与我的用户相比更好(性能),以便通过关系进行查询或将组ID添加到帖子表中是一个好主意?

回答

0

如果D是一个帖子,我不认为这是一个好主意,添加一个组到帖子。这篇文章是由一个用户制作的,而不是一个小组。并且您可以实施查询,让您可以按组进行过滤。查询不会那么简单,因为如果您在发布表中有组ID,但这就是我会这么做的方式:)