MySQL很多到mny(n:n):将1个条目设置为主条目

时间:2013-05-12 01:02:15

标签: mysql sql

将此示例1用于n:n关系:

http://en.tekstenuitleg.net/static/images/beertable.gif

设置主要或主要多对多字段的最佳方法是什么?示例:假设我想将经销商“Devrolijke drinker”(ID AB999)设置为“Sint”啤酒(ID 160)的主要或首选分销商。我的第一个猜测是在联结表中添加一个额外的字段,例如(bool) is_primary。但如果两个字段(意外地)设置为true,这很容易变得不一致,对吗?有任何想法吗?谢谢!

参考

1 The many-to-many relationship

2 Another thread

1 个答案:

答案 0 :(得分:0)

1)您可以将“首选分销商”列添加到啤酒表中,该表将具有首选分销商的ID作为数据类型。然后添加另一列主分销商与该分销商ID。这将允许查询n加入你想要它听起来像。

2)您可以使用编号系统。将其作为单个列添加到“啤酒经销商”表中。你可以使主经销商= 1,首选经销商= 2等。然后通过这个值查询,如果你想找到啤酒的所有首选经销商。 (如果您有同一个啤酒的多个首选分销商,这种方式会更好。