我需要能够标准化产品的尺寸和颜色信息。这是因为我们的一些产品可能来自两个或更多供应商(但产品完全相同),但他们对尺寸和颜色名称都有自己的想法!
在我的第一次尝试中,我允许网站管理员简单地覆盖原始数据,以便跨供应商对其进行标准化。这在目录更新时引起了我的问题,因为我丢失了来自每个供应商的尺寸和颜色名称。
我正在考虑使用另一组表来存储标准化数据 - 例如,使用一组标准的大小,如S,M,L,XL,使用另一个表来映射大小id(行号)来自供应商数据的多种尺寸变化。这将保留原始数据,以便我可以自动更新它。但这意味着映射表变得非常大,非常快,我担心必须查询这个外部大小表并有效地“重写”大小的性能。
目前我无法想到另一种做法,同时仍然保持原始数据的完好 - 我错过了一个技巧还是这是唯一的方法?
以下是我看到过载工作的基本概念
product_table : ID PRODUCT_ID 颜色 尺寸 供应商 价
size_table : ID 大小
size_map : ID size_id map_to_size(要从product_table重载的数据)
如前所述 - size_table行与size_map中列出的要替换的大小之间存在一对多的关系。数据的一个例子(基本)
产品:T恤
供应商A大小:8-10,11-12,13-14,15-16 供应商B尺寸:S,M,L,XL 供应商C大小:Y / S,Y / M,Y / L,Y / XL
我们只是希望能够看到S,M,L,XL,但是这些数据会恢复供应商的原始更新和采购订单。
答案 0 :(得分:1)
product_table :id product_id color standard_size供应商价格
size_map :ID供应商standard_size supplier_size