SPU 和 SKU 的定义及关系

定义

SPU(Standard Product Unit,标准产品单位

  • SPU 是某个商品的通用属性的集合,用来描述某个产品的核心特性
  • 在数据库中,它通常用 pms_product 来表示。
  • 举例:iPhone XS 是一个 SPU,它描述了这款手机的基础信息,比如品牌(Apple)、型号(XS)、核心功能等。

SKU(Stock Keeping Unit,库存量单位)

  • SKU 是某个商品在具体规格上的唯一标识,包含了更精细的属性和库存信息。
  • 在数据库中,它通常用 pms_sku_stock 来表示。
  • 举例:iPhone XS 公开版 64G 银色 是一个 SKU,因为它具体到颜色(银色)和存储容量(64G),同时包含对应的库存量和价格等信息。

SPU 和 SKU 的关系:

  • 一个 SPU(pms_product)可以有多个 SKU(pms_sku_stock),它们之间是一对多的关系。
  • SKU 是 SPU 的实例化,SKU 的价格、库存、促销等信息可以独立设置。

数据库中的 SPU-SKU 关系

SPU 在数据库中的实现:pms_product

  • SPU(标准产品单位)pms_product 表中的每一行记录。
  • 描述 SPU 的字段包括:
    • id:唯一标识 SPU。
    • name:SPU 的商品名称(如 "iPhone XS")。
    • brand_id:品牌 ID,用于关联品牌(如 Apple)。
    • description:SPU 的描述信息。
    • weightfreight_template_id:通用的物流信息。
    • product_attribute_category_id:SPU 支持的属性分类(如颜色、存储容量)。

SKU 在数据库中的实现:pms_sku_stock

  • SKU(库存量单位)pms_sku_stock 表中的每一行记录。
  • 描述 SKU 的字段包括:
    • sku_code:SKU 的唯一标识(如 "IPXS64SILVER")。
    • product_id:关联 SPU 的 ID(外键,指向 pms_product.id)。
    • sp_data:SKU 的规格数据(如颜色=银色、存储容量=64G)。
    • price:SKU 的价格(可以和 SPU 的基础价格不同)。
    • stock:SKU 的库存数量。
    • promotion_price:SKU 的促销价格。

具体例子:iPhone XS 的 SPU-SKU 数据库实现

SPU 数据(pms_product 表中的一条记录):

字段名

id

1

name

iPhone XS

brand_id

1 (Apple)

description

Apple iPhone XS 全新智能手机

weight

0.5(公斤)

freight_template_id

2

SKU 数据(pms_sku_stock 表中的多条记录):

字段名

id

1

product_id

1 (关联 SPU 的 ID)

sku_code

IPXS64SILVER

sp_data

{"颜色": "银色", "存储": "64G"}

price

8999

stock

50

promotion_price

8499

字段名

id

2

product_id

1

sku_code

IPXS256GOLD

sp_data

{"颜色": "金色", "存储": "256G"}

price

10999

stock

30

promotion_price

10499

结合业务理解:SPU 和 SKU 的实际应用

(1) SPU 用于展示商品的通用信息

  • 在前端,SPU(pms_product)会作为商品的核心展示单位。例如:
    • 列表页显示商品名称(name)、主图(pic)、基础价格(price)。
    • 商品详情页显示通用描述(description)和品牌信息(brand_id)。
  • 用户可以在商品详情页选择具体的 SKU。

(2) SKU 用于具体规格的库存和价格管理

  • 用户在商品详情页选择具体规格后,系统会查询 pms_sku_stock 表:
    • 返回对应 SKU 的库存(stock)。
    • 返回 SKU 的具体价格(pricepromotion_price)。
  • 下单时,系统扣减 SKU 的库存,而不是扣减 SPU 的库存。

(3) 促销和物流管理

  • 促销: SKU 可以有独立的促销价格(promotion_price),即同一商品不同规格的促销力度可能不同。
  • 物流: SPU 中的 weight 字段用于物流费用计算,但具体运费可能因 SKU(如包装差异)而调整。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值