反范式化表设计

wiki tables message
1、 table_goods
商品表
| 序号 | 名称 | 描述 | 类型 | 键 | 为空 | 额外 | 默认值 |
|---|---|---|---|---|---|---|---|
| 1 | goods_id |
商品ID | int(11) | PRI | NO | auto_increment | |
| 2 | goods_name |
商品名称 | varchar(80) | YES | |||
| 3 | goods_desc |
商品描述 | varchar(255) | YES | |||
| 4 | end_time |
过期时间 | int(11) | YES |
2、 table_order
订单表
| 序号 | 名称 | 描述 | 类型 | 键 | 为空 | 额外 | 默认值 |
|---|---|---|---|---|---|---|---|
| 1 | order_id |
用户ID | int(11) | PRI | NO | auto_increment | |
| 2 | user_id |
用户ID | int(11) | UNI | NO | ||
| 3 | end_time |
下单时间 | timestamp | YES | |||
| 4 | apply_type |
支付类型 | int(11) | NO |
3、 table_product
订单商品表
| 序号 | 名称 | 描述 | 类型 | 键 | 为空 | 额外 | 默认值 |
|---|---|---|---|---|---|---|---|
| 1 | product_id |
商品ID | int(11) | PRI | NO | auto_increment | |
| 2 | order_id |
订单ID | int(11) | NO | |||
| 3 | product_num |
商品数量 | int(11) | YES | |||
| 4 | product_pri |
商品价格 | int(11) | YES |
4、 table_user
用户表
| 序号 | 名称 | 描述 | 类型 | 键 | 为空 | 额外 | 默认值 |
|---|---|---|---|---|---|---|---|
| 1 | user_id |
用户ID | int(11) | PRI | NO | auto_increment | |
| 2 | user_name |
姓名 | varchar(32) | YES | |||
| 3 | user_tel |
电话 | varchar(32) | YES | |||
| 4 | user_addr |
地址 | varchar(50) | YES | |||
| 5 | user_email |
邮箱 | varchar(32) | YES |



为什么反范式化
因为在互联网项目中读大大超过写所以
- 减少表关联数量
- 增加数据的读取效率