13
2016-02-01 18:16:22 +08:00 4
给你做了个例子 ... 见下 ...
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 取得其他所有数据 ...