sql在一个字段中有多个键

时间:2013-08-15 18:07:38

标签: mysql sql

我猜,问题的名称很奇怪,但我不知道如何正确说明,所以我会尝试描述问题。比如,我们有两个表:

1)

id | unit_name | strength | health
1  | private   | 10       | 10
2  | general   | 5        | 5
n  | someone   | 123      | 321

2)

id | rules | who_has_this_rule
1  | rule1 | 1
2  | rule2 | 2
3  | rule3 | 1
4  | rule4 | 1

字段“who_has_this_rule”与第一个表的id对应。 但如果一个单位在他的个人资料中应该有多个规则,我无法弄清楚该怎么办。例如,private应该有rule1和rule4。怎么做?

1 个答案:

答案 0 :(得分:2)

您需要的是一个联接表。

加入规则和单位的第三个表

unit_rules

id | unit_id | rule_id
1  |  1      | 1
2  |  1      | 4
3  |  2      | 1

您可以拥有主键(id)或复合键(unit_id和rule_id)