## 方法一

mysql> SELECT * FROM `ware_product`;

+----+----------+--------------+------------------------------+--------+

| id | category | name | attributes | status |

+----+----------+--------------+------------------------------+--------+

| 1 | 329475 | 某种手机 | ["网络","颜色","存储"] | 1 |

| 2 | 131329 | 某种衣服 | ["尺码","颜色"] | 1 |

+----+----------+--------------+------------------------------+--------+

2 rows in set (0.00 sec)

mysql> SELECT * FROM `ware_item`;

+----+-----+--------+--------------+------------------------+---------+-------+--------+

| id | pid | fakeid | name | attributes | price | stock | status |

+----+-----+--------+--------------+------------------------+---------+-------+--------+

| 1 | 1 | 583701 | NULL | ["电信","白","16G"] | 1999.00 | NULL | 1 |

| 2 | 1 | 583702 | NULL | ["电信","黑","16G"] | 1999.00 | NULL | 1 |

| 3 | 1 | 583703 | 最后五台 | ["移动","黑","64G"] | 1999.00 | 5 | 1 |

| 4 | 2 | 241351 | NULL | ["M","红"] | 128.00 | NULL | 1 |

+----+-----+--------+--------------+------------------------+---------+-------+--------+

4 rows in set (0.00 sec)

这是个简单的模型 ... 我把没用的东西比如副标题推荐语图片角标等等都去了 ...

库存也只是写个意思 ... 实际上库存不在这里 ...

Product 表是抽象的产品表 ... 当前产品下的所有 SKU 的共有属性保存在这里 ...

Item 表是具体的详情表 ... 所有涉及交易的实体都存在这里 ...

用户可感知的只有 item.fakeid ... 通过 fakeid 取得其他所有数据 ...

## 方法二

### 京东的商品 SKU 设计

举个例子:博世的空调滤清器,再商品列表页空调滤清器分类博世品牌下全是同一 SPU 不同 SKU 的热销商品,进入到单个商品页面里,也可以选择其他的 SKU ,选择其他 SKU 就跳转到相应的页面。

这样价格、库存都在商品表里保存,只需加一个 SKU 表,保存相关的 SKU 商品配置关系即可。

sku设计mysql_SKU数据库设计相关推荐

  1. 软件设计之 数据库设计

    [按语:在软件设计或是动态网站开发中,数据库设计时很重要,我觉得可以说是开发工作的核心部分,所以学好数据库设计,是很重要的,也是大有前途的...]  ◆.概念 首先要搞清楚容易混淆的两个概念:&quo ...

  2. CCBPM高级开发之类设计与数据库设计命名规则

    总体规则 1,以英文命名,每一个字母大写,提倡用简写.比如Emp 人员 Dept 部门 Station 岗位. 2,如果英文名称太长,或者不常用可考虑用中文命名,建议用中文的缩写.比如管理机关GLJG ...

  3. 系统数据据结库设计理论mysql_基于JavaEE的报刊征订管理系统_JSP网站设计_MySQL数据库设计...

    目  录 摘  要I ABSTRACTII 第一章 绪论1 1.1课题背景1 1.2目的和意义1 1.3开发工具及技术1 1.3.1开发工具1 1.3.2 JSP技术2 1.3.3 JavaScrip ...

  4. mysql数据库设计学习---数据库设计规范化的五个要求

    一:表中应该避免可为空的列: 二:表不应该有重复的值或者列: 三: 表中记录应该有一个唯一的标识符  在数据库表设计的时候,数据库管理员应该养成一个好习惯,用一个ID号来 唯一的标识行记录,而不要通过 ...

  5. 数据库设计:数据库设计的基本步骤介绍

    数据库设计主要包括用户需求分析.概念结构设计.逻辑结构设计.物理结构设计.数据库实施阶段.数据库运行和维护阶段等六个阶段. 1.用户需求分析  数据库设计人员采用相应的辅助工具对应用对象的功能.性能. ...

  6. oracle数据库纵表设计,oracle 数据库设计-数据库表设计

    在数据库设计中,我的工作中经常会分析怎样商业逻辑中的表格如何设计.再设计表的关系之前 需要先了解关系型数据库特点 1关系型数据库,是指采用了关系模型来组织数据的数据库: 2.关系型数据库的最大特点就是 ...

  7. 数据库设计_数据库设计(一)分析及逻辑设计

    ​作为一个后端开发者,数据库设计是我们避不开的课题,不管是面试的时候,还是在真实工作的情境下,我们的工作不仅仅是将代码开发出来,根据开发的项目,设计出支撑项目的数据库,也是一个合格的开发者所应该具备的 ...

  8. 数据库设计_SQL数据库设计(数据建模)

    数据库设计 为什么我们创建数据库需要提前进行设计? 纸飞机 飞机图纸 战斗机 凭借人经验和记忆我们能够完成一些简单的制作,但是目标达到一定的难度的时候,光是一个人凭经验或直觉是很难去准确的完成的,所以 ...

  9. 基于JavaEE的健身器材产品专卖店管理系统_JSP网站设计_MySQL数据库设计

    目 录 1.引言4 2.系统分析5 2.1 系统需求分析5 2.2 本系统采用的关键技术6 2.2.1 JSP技术6 2.2.2 JavaBean技术8 2.2.3 JDBC技术9 2.2.4 用JD ...

最新文章

  1. c 后台代码调用ajax,.NET Selenium WebDriver操作调用浏览器后台执行Js(JavaScript)代码...
  2. FreeBSD5.3下安装Apache+PHP+MySQL+Tomcat
  3. DisplayContent、StackBox、TaskStack笔记
  4. altium恢复所有默认设置_windows10技巧 恢复出厂状态的4种方法
  5. java mvc中重复提交_SpringMVC之——防止重复提交表单的方法(一)
  6. 分析一天1000万北京地铁客流,我们发现...
  7. 上海交大MBA学费与资助
  8. 取消对 null 指针“l”的引用。_彻底理解链表中为何使用二级指针或者一级指针的引用...
  9. C#接口。 隐式实现与显式实现
  10. 基于微信云开发的简单商城小程序源码与配置指导
  11. 2012-11-21nbsp;09:30nbsp;NSStr…
  12. C# LISTVIEW实例:文件图标显示
  13. 对话月薪10万的技术老兵:技术人如何开心工作、快乐赚钱?
  14. JAVA求三角形的面积
  15. 用JAVA编写MD5大写32位加密
  16. python天津儿童培训少儿编程课一定要了解
  17. ChatGPT 大规模封号,并停止注册!
  18. C语言 互斥量(加锁)解决同步问题
  19. 洛谷_3975 [TJOI2015]弦论(后缀自动机)
  20. 播放器上音频断续问题的原因

热门文章

  1. 视频压缩怎么弄?建议收藏这些方法
  2. NC 工具的使用教程
  3. springboot返回时间有错解决方案
  4. 2022-2027年中国小麦市场竞争态势及行业投资前景预测报告
  5. 威海综合竞争力跃居全国第27位
  6. Options, Futures and Other Derivatives 读书笔记(三)—— CHP4
  7. 群晖导入SSL证书HTTPS访问
  8. android开发之Launcher icon(启动图标)的设计
  9. 华为ccie网络工程师中技术要点PPP中PAP和CHAP的区别
  10. 传奇战盟GOM引擎登录器配置教程