首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >电商系统SPU和SKU

电商系统SPU和SKU

作者头像
乐心湖
发布2021-01-20 10:13:20
2.3K1
发布2021-01-20 10:13:20
举报
文章被收录于专栏:MyTechnologyMyTechnology

这是电商系统两个非常重要的概念,如果你能够理解这里面的关系网,会对你的代码思路更加清晰!

SPU和SKU

SPU:Standard Product Unit(标准化产品单元)

商品信息聚合的最小单元,一组可复用、易检索的标准化信息集合,该集合描述了一个产品的特性。

SKU:Stock Keep Unit(库存量单位)

库存进出计量的基本单元,可以是以件,盒,托盘等为单位。SKU这是对于大型连锁超市DC(配送中心)物流管理的一个必要的方法。现在已经被引申为产品统一编号的简称,每种产品均对应有唯一的 SKU号。换句话说,就是购买的最小单位。

例如小米11就是一个商品的最小单元,称之为SPU;而小米11 8G+128G就是一个商品的具体落实,称之为SKU;

引申出来的就有一个 基本属性规格参数销售属性

基本属性

在京东小米11的详细页,我们可以看到一栏 ”规格与包装“,大致内容如下

而在 iPhone12的页面上,我们同样可以看到几乎相同的基本属性,只是属性值不同。

由此我们可以观察到这些 基本属性规格参数 与 “手机” 分类有关,而且是三级分类下的。

因此同一个分类下,不同的SPU基本属性字段相同,具体属性值不同。但同个SPU下,不同的SKU属性值是一样的。例如小米11和iPhone11都有机身长度,机身重量这些属性,但值不同。而对于小米11来说,8G和16G的机身重都是196g。

值得注意的是,属性较多我们一般还得整个分组,在上面的图中我们观察到了主体是个分组,里面放了入网型号,产品名称,上市年份,首销日期,上市月份。

销售属性

在小米11购买页中,你选择不同的SKU,价格和库存量等各自的特殊属性是不同的,这就是每个SKU的销售属性。

数据库设计

pms_category【商品三级分类】

代码

名称

数据类型(MYSQL)

主键

内容示例

cat_id

分类id

BIGINT(19)

150

name

分类名称

CHAR(50)

手机

parent_cid

父分类id

BIGINT(19)

12

cat_level

层级

INT(10)

3

show_status

是否显示0-不显示,1显示

TINYINT(3)

1

pms_attr【商品属性】

代码

名称

数据类型(MYSQL)

主键

内容示例1

内容示例2

attr_id

属性id

BIGINT(19)

120

210

attr_name

属性名

CHAR(30)

上市年份

库存

value_type

值类型0-为单个值,1-可以选择多个值

TINYINT(3)

0

0

search_type

是否需要检索0-不需要,1-需要

TINYINT(3)

1

0

value_select

可选值列表用逗号分隔

CHAR(255)

2020,2021

大量

attr_type

属性类型0-销售属性,1-基本属性,2-既是销售属性又是基本属性

TINYINT(3)

1

2

enable

启用状态0 - 禁用,1 - 启用

BIGINT(19)

1

1

catelog_id

所属分类

BIGINT(19)

150

150

show_desc

快速展示【是否展示在介绍上;0-否 1-是】,在sku中仍然可以调整

TINYINT(3)

0

0

pms_attr_group【属性分组】

代码

名称

数据类型(MYSQL)

主键

内容示例

attr_group_id

分组id

BIGINT(19)

130

attr_group_name

组名

CHAR(20)

主体

sort

排序

INT(10)

1

catelog_id

所属分类id

BIGINT(19)

150

pms_attr_attrgroup_relation【属性&属性分组关联】

代码

名称

数据类型(MYSQL)

主键

内容示例

id

id

BIGINT(19)

140000

attr_id

属性id

BIGINT(19)

120

attr_group_id

属性分组id

BIGINT(19)

130

attr_sort

属性组内排序

INT(10)

1

解读:上市年份为基本属性,归类在主体分组中,他们均属于150分类,即手机,在关联表是 120-130

pms_spu_info【spu信息】

代码

名称

数据类型(MYSQL)

主键

内容示例

id

商品id

BIGINT(19)

110

spu_name

商品名称

VARCHAR(200)

小米11

spu_description

商品描述

VARCHAR(1000)

小米11牛逼

catalog_id

所属分类id

BIGINT(19)

150

brand_id

品牌id

BIGINT(19)

11111111

publish_status

上架状态0 - 下架,1 - 上架

TINYINT(3)

1

pms_product_attr_value【spu属性值】

代码

名称

数据类型(MYSQL)

主键

内容示例

id

id

BIGINT(19)

190

spu_id

商品id

BIGINT(19)

110

attr_id

属性id

BIGINT(19)

120

attr_name

属性名

VARCHAR(200)

上市年份

attr_value

属性值

VARCHAR(200)

2021

attr_sort

顺序

INT(10)

1

quick_show

快速展示【是否展示在介绍上;0-否 1-是】

TINYINT(3)

1

解读:有一个spu,名为小米11,它旗下有个属性为上市年份,属性值为2021

pms_sku_info【sku信息】

代码

名称

数据类型(MYSQL)

主键

内容示例

sku_id

skuId

BIGINT(19)

222

spu_id

spuId

BIGINT(19)

110

sku_name

sku名称

VARCHAR(255)

小米11 8G

sku_desc

sku介绍描述

VARCHAR(2000)

小米11 8G牛逼

catalog_id

所属分类id

BIGINT(19)

150

brand_id

品牌id

BIGINT(19)

11111111

sku_title

标题

VARCHAR(255)

小米11 8G

price

价格

DECIMAL(18,4)

3999

sale_count

销量

BIGINT(19)

10000

pms_sku_sale_attr_value【sku销售属性&值】

代码

名称

数据类型(MYSQL)

主键

备注

id

id

BIGINT(19)

211

sku_id

sku_id

BIGINT(19)

222

attr_id

attr_id

BIGINT(19)

210

attr_name

销售属性名

VARCHAR(200)

库存

attr_value

销售属性值

VARCHAR(200)

9999999

看完这么多表,相信你已经懵逼了,其实这确实是相对比较绕和复杂,对后端代码也是个不小的挑战。 首先我定义了一个三级分类,id为150,叫做手机。 定义两个属性,id为120的是上市年份,为基本属性;210的是库存,为销售属性。 定义一个基础属性分组,id为130,名为主体,归在手机分类。 将130和120相关联,也就是将上市年份归在主体。 定义一个SPU,也就是商品 小米11 id为110 填写spu属性值,也就是让小米11的上市年份定义为2021 定义一个SKU,也就是购买单位,小米11 8G id为222 填写sku属性值,也就是小米11 8G的库存定义为9999999 最终结果,在手机分类下有一个基础信息分组-主体,主体下有上市年份,手机分类下还有一个销售属性-库存。定义一个小米11的SPU,一个小米11 8G的SKU,让小米11的上市年份定义为2021,小米11 8G库存定义为9999999。


版权属于:乐心湖's Blog

本文链接:https://cloud.tencent.com/developer/article/1775849

声明:博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • SPU和SKU
  • 基本属性
  • 销售属性
  • 数据库设计
相关产品与服务
云数据库 SQL Server
腾讯云数据库 SQL Server (TencentDB for SQL Server)是业界最常用的商用数据库之一,对基于 Windows 架构的应用程序具有完美的支持。TencentDB for SQL Server 拥有微软正版授权,可持续为用户提供最新的功能,避免未授权使用软件的风险。具有即开即用、稳定可靠、安全运行、弹性扩缩等特点。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档