商品SKU数据架构
假设我们有一个商品是T恤衫,它有两种规格类型:颜色和尺寸。每种类型的规格都有多个可能的值,并且每个组合都有不同的价格和库存量。
示例数据
商品表 (Product)
product_id name description category_id brand_id
1 T恤衫 舒适透气的纯棉T恤 3 2
规格类型表 (Specification_Type)
spec_type_id name unit
1 颜色 -
2 尺寸 -
规格值表 (Specification_Value)
spec_value_id spec_type_id value
1 1 红色
2 1 蓝色
3 2 S
4 2 M
5 2 L
商品规格表 (Product_Specification)
这里记录了哪些规格类型适用于该商品。
id product_id spec_value_id
1 1 1
2 1 2
3 1 3
4 1 4
5 1 5
SKU表 (Stock_Keeping_Unit)
每个SKU代表一种特定的颜色和尺寸组合。
sku_id product_id price stock_quantity barcode
1 1 99.00 100 12345678
2 1 99.00 150 12345679
3 1 109.00 200 12345680
SKU与规格关系表 (SKU_Specification_Relation)
这表明每个SKU对应的具体规格。
id sku_id spec_value_id
1 1 1
2 1 3
3 2 2
4 2 4
5 3 2
6 3 5
在这个例子中,我们可以看到:
sku_id为1的商品是红色、S尺寸的T恤,售价99元,库存100件。
sku_id为2的商品是蓝色、M尺寸的T恤,售价也是99元,但库存150件。
sku_id为3的商品是蓝色、L尺寸的T恤,售价稍高一些,为109元,库存200件。
这样的设计允许系统灵活处理各种规格组合,并且可以很容易地扩展到支持更多种类的规格(例如材质、样式等),同时也方便管理和查询不同规格组合的价格和库存信息。