有人可以告诉我如何创建这个数据库结构.
这是一个例子:
这是一个例子:
Table "countries": id,countryname 1,"US" 2,"DE" 3,"FR" 4,"IT"
现在我有另一个表“产品”,在那里我想存储这个产品可用的所有国家:
Table "products": id,productname,countries 1,"product1",(1,2,4) // available in countries US,DE,IT. 2,"product2",(2,3,4) // available in countries DE,FR,IT.
我的问题:
如何在“产品”中设计表结构以便能够存储多个国家/地区?
我最好的想法是在那里放一个以逗号分隔的字符串(即“1,4”),然后拆分该字符串以查找每个条目.但我怀疑这是最好的方法吗?
编辑:谢谢大家的帮助,太棒了!很难选择正确的答案,
我最终选择了Gregs因为他向我指了一个JOIN解释并给出了一个如何使用它的例子.
解决方法
您需要一个与该
many-to-many关系的交集表.
Table Country CountryID,CountryName Table CountryProduct CountryID,ProductID Table Product ProductID,ProductName
然后你将Inner Join所有3个表格都列入国家和地区列表产品.
Select * From Country Inner Join CountryProduct On Country.CountryID = CountryProduct.CountryID Inner Join Product On CountryProduct.ProductID = Product.ProductID