目前我正在寻找解决方案。英语不是我的母语,所以我添加了两张图片来澄清一下。我对SQL的了解非常基础。
椅子(最终产品)包含多个组件。
每个组件包含一个项目编号,每个备件组包含多个项目编号。
在数据库中,一个备用组件与最终产品。
椅子和备件分为不同的组。
是否可以创建这样的表?如果有可能如何?
提前致谢!
答案 0 :(得分:1)
这将是我的方法:
Table: Products -- a table of products
ProductID ProductName DateAdded
1 Chair X 01/01/2016
2 Chair Y 05/05/2016
3 Spare Set A 06/06/2016
...
Table: Components -- a table of components
ComponentID ComponentName ItemNumber DateAdded
1 Backrest X01 01/01/2016
2 Headrest X02 01/01/2016
...
Table: ProductComponent -- a lookup/mapping table to link Product and Component
PCID ComponentID ProductID DateAdded
1 1 1 01/01/2016
2 2 1 01/01/2016
...
DateAdded是产品或组件首次输入数据库的日期。它是出于审计目的。
答案 1 :(得分:0)
下面的查询使用标准SQL生成这样的支点 并且还应该在MySQL中工作。
它基于JohnHC的答案中的表格布局 (无论如何都会这样做。使用映射表是一种常见的非规范化方法。)
{{1}}