电子商务数据库设计:具有可选变体和缩放价格的产品

时间:2017-04-24 07:36:53

标签: database postgresql database-design e-commerce

对于客户,我正在尝试构建一个最小的电子商务系统。它会有可能有变化的产品(想想S,M,L),并且每个变化都可能有一个按比例的价格系统,具体取决于客户订购的数量:

  • 1件衬衫,尺寸L = 10欧元
  • 5件衬衫,尺码L = 9欧元
  • 1件衬衫,尺码S = 8欧元
  • 5件衬衫,尺寸S = 7欧元

但也可能有没有变化和固定价格的产品:

  • n套头衫=每个50欧元

产品没有变化,只有一个按比例缩放的价格体系:

  • 1条裤子= 100欧元
  • 5条裤子=每条90欧元

我在考虑以下数据库架构:

产品

  • ID
  • 描述
  • ...

product_variations

  • ID
  • PRODUCT_ID
  • variation_id(包含所有可能变体的表格:颜色,大小等)
  • 值(l,m,红色,绿色)

product_prices

  • ID
  • PRODUCT_ID
  • product_variation_id(如果价格是针对产品的,则可以为null,而不是变体)
  • priceNet
  • qualify_amount(客户必须订购以符合此价格的最低商品数量,默认为1)

是否可以使product_variation_id可以在价格和变化之间实现所需的灵活性,而不必为每个产品添加至少一个(标准)变体(当产品没有变化时)?有更好的想法吗? :)

0 个答案:

没有答案