如何对可能有或没有价格调节剂的产品的价格进行建模。例如,假设我有一件有不同尺寸和不同颜色的 T 恤待售:
- 小号,白色 = 10 美元
- 小号,黑色 = 10 美元
- 大号,白色 = 15 美元
- 大号,黑色 = 20 美元
请记住,并非所有价格修饰符都是“尺寸”和“颜色”。此外,某些产品可能根本没有价格调节剂。这些信息应该如何在数据库中建模?
我的直觉是选择 EAV,但每当我开始考虑 EAV 时我总是很担心。我使用 EAV 对此进行建模的方式将
products
- id
- name
prices
- id
- product_id
- attribute
- value
我总是有属性=“金额”和值(value)=无论价格是多少。
我担心这不是对此类数据进行建模的正确方法。建议/反馈?
最佳答案
正如您所知,在大多数制造系统,尤其是成本核算系统中,您会看到这些数据的不同建模和困难,如果现在您可以访问任何著名的 ERP 系统,您可以看到它们的架构,但作为我自己的想法,属性你提到的很棒。
这使您可以轻松拥有和管理所有产品、属性和产品属性:
products
- id
- name
attributes
- id
- attribute_id
- attribute_name
- attribute_type
product_attribute_values
- id
- product_id
- attribute_id
- value
现在我们在为具有多个属性的产品定价时遇到问题,我认为是指定有多少属性在定价中发挥作用(即假设两个),然后我们需要这样的东西:
product_attribute_price
- id
- product_attribute_values_id_1
- product_attribute_values_id_2
- price
正如我所说,大多数 ERP 系统对于此类场景都有很好的架构,但我带来了自己的想法,没有复制任何一个,这个想法肯定可能有问题,需要更多审查
关于mysql - 如何对价格调节因素建模?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28594946/