如何设计SKU表结构
spu 和 sku
这里拿 iphone6s 举例,它身上有很多的属性和值, 比如
毛重: 420.00 g
产地:中国大陆
容量: 16G, 64G, 128G
颜色:银,白,玫瑰金
spu 指的是商品(iphone6s),spu 属性就是不会影响到库存和价格的属性,又叫关键属性,与商品是一对一的关系,比如
毛重: 420.00 g
产地:中国大陆
sku 指的是具体规格单品(玫瑰金 16G),sku 属性就是会影响到库存和价格的属性,又叫销售属性,与商品是多对一的关系,比如
容量: 16G, 64G, 128G
颜色:银,白,玫瑰金
所以 iphone6s 则会生成 3 * 3 = 9 个 sku
业务逻辑
同一商品不同 SKU 库存和售价不同.
2. 不同类型的商品具有不同的属性名和属性值 (如汽车和服饰), 所以属性需要支持后期添加和维护.
3. 在某个商品分类下通过属性筛选商品.
4. 商家某件商品的销量统计,该件商品内几个不同 SKU 的销量统计.
5. 更多…
表设计
商品表
(商品编号, 商品名称, 商品分类编号, 卖家编号, SPU销量, 评论数)
(1, '裤子名', 2, 1, 0, 3)
(2, '外套名', 3, 1, 0, 5)
(3, '内裤名', 4, 1, 0, 2)
(4, '袜子名', 5, 1, 0, 3)
分类表
(商品分类编号, 分类名称, 父分类编号)
(1, 男装, 0)
(2, 裤子, 1)
(3, 外套, 1)
(4, 内裤, 1)
(5, 袜子, 1)
SKU 表 (库存表)
(SKU编号, 商品编号, SKU属性, 价格, 库存, SKU销量)
(1, 1, [1:1,2:3], 99, 400, 0) //其中 [1:1,2:3] 表示 "颜色为黑色,尺码为X"
(2, 1, [1:1,2:4], 99, 200, 0) //其中 [1:1,2:4] 表示 "颜色为黑色,尺码为XL"
(3, 1, [1:2,2:3], 99, 300, 0) //其中 [1:2,2:3] 表示 "颜色为白色,尺码为X"
(4, 1, [1:2,2:4], 99, 100, 0) //其中 [1:2,2:4] 表示 "颜色为白色,尺码为XL"
上面只列出商品1这个分类的4个SKU.
属性名表
(属性名编号, 属性名, 商品分类编号, 父属性编号)
(1, 颜色, 2, 0)
(2, 尺码, 2, 0)
(3, 品牌, 2, 0)
上面只列出裤子这个分类的3个属性名.
属性值表
(属性值编号, 属性值, 属性名编号)
(1, 黑色, 1)
(2, 白色, 1)
(3, X, 2)
(4, XL, 2)
(5, 七匹狼, 3)
(6, 九牧王, 3)
上面只列出裤子这个分类的6个属性值.
商品和属性关系表
(自增编号, 商品编号, 属性名编号, 属性值编号)
(1, 1, 1, 1) 商品1颜色为黑色
(2, 1, 1, 2) 商品1颜色为白色
(3, 1, 2, 3) 商品1尺码为X
(4, 1, 2, 4) 商品1尺码为XL
————————————————
原文作者:Martist
转自链接:https://learnku.com/articles/48792