0

好吧,我什至不知道从哪里开始。我对 mysql 太陌生了,我无法理解它。

我有两张桌子:

Table1: resources
Column1: id (primary,autoinc)
Column2: memberID
Column3: resource1
Column4: resource2

Table2: groups
Column1: memberid1
Column2: memberid2
Column3: memberid3
Column4: memberid4
Column5: memberid5
Column6: memberid6
Column7: groupID

我正在尝试做的是管理成员之间的资源组。每个成员将在 table1 中有他们的信息,然后 table2 中每个成员的 6 个分组将完成一个特定的组。如果一个人从 table1 中删除,table2 将有任何匹配设置为 NULL 的列。

我的问题是显示每个组并填充成员 ID 和相关资源的最有效方法是什么?

编辑-

输出甚至可以是:

Cicle: ID# Members: memberid1, memberid2, memberid3, memberid4, memberid5, memberid6

然后点击ID显示每个成员的资源。

4

1 回答 1

0

您可以有一个单独的表来单独处理成员和每条记录,而不是像您的情况那样每列。因此,当一个成员被删除时,它可以很容易地从组中删除。所以,它可能会喜欢:

 Table1: resources
 Column1: id (primary,autoinc)
 Column2: memberID
 Column3: resource1
 Column4: resource2

 Table2: groups
 Column1: groupID
 Column2: groupName

 Table3: groupsmember
 Column1: groupID
 Column2: memberID

你可能有成员的表,如:

 Table4: members
 Column1: memberID
 Column2: memberLastname
 Column3: memberFirstname

然后您可以使用 GROUP_CONCAT 查看每个组的成员 (6):

SELECT groupID, GROUP_CONCAT(memberID)
FROM groupsmember
GROUP BY groupID

在此处查看示例

于 2013-06-08T02:13:14.823 回答