类似麦当劳的套餐的数据表设计

时间:2021-06-20 12:14:01
如:可乐是单独商品,汉堡+可乐+薯条构成了一个套餐商品。

请教,在数据库设计时,单一商品和套餐是分别用数据表存放好,还是放在同一张商品目录表中好。

(套餐的明细另用表描述)

13 个解决方案

#1


放在同一张商品目录表(主表),另外再有一个商品明细表

#2


mark

#3


如果套餐也有獨立的編碼,可以放在一起

#4


请问,楼上的大侠们,放在一起,有什么优势吗,管理统一还是查询方便或其他?

#5


按你写这个 可乐是单独商品,汉堡+可乐+薯条构成了一个套餐商品。
汉堡不是单品? 更是吧。这种应该放一起,就是单品+单品的套餐。

#6


商品一个表
套餐一个表
套餐明细一个表
吧。

#7


汉堡也是单品,薯条也是单品

#8


个人想法
单品表
商品名 商品Code  价格   种类
可乐     1     6       1
橙汁     2     6       1
汉堡A    3     12      2
汉堡B   4     12      2


套餐表
套餐名 套餐Code 价格
A      1    15

套餐明细表
套餐Code  种类1数量  种类1可选Code  种类2数量  种类2可选Code
1             2       1,2            1         3


商品的种类可分为 饮料 主食 甜品 油炸食品  其它

#9


从实际出发吧

单品一个表,有单独的单价
套餐一个表,有套餐单价
套餐--单品一个关系表,存放两个之间的关系和对应数量,有些套餐可以是两份鸡翅的

分开会清晰点,因为套餐不可能包含另一个套餐,放在一起不清晰。数据量不知道会不会多,如果多的话,放在一起影响性能。

#10


放一起方便查询吧 表多了也不好 主表多建立一个字段来记录套餐 可以为NULL 不是套餐就为NULL

#11


根据你的需求 我觉得还是分开比较好一点
如果套餐的数量不是很多的话 直接弄成一个码表来做

查询的时候直接通过一个ID关联 比较简单

#12


赞同这种做法
引用 9 楼 nbdba 的回复:
从实际出发吧

单品一个表,有单独的单价
套餐一个表,有套餐单价
套餐--单品一个关系表,存放两个之间的关系和对应数量,有些套餐可以是两份鸡翅的

分开会清晰点,因为套餐不可能包含另一个套餐,放在一起不清晰。数据量不知道会不会多,如果多的话,放在一起影响性能。

#13


分开吧。单品一个表,套餐一个表,套餐表引用单品主键,还能设置相关套餐属性。

#1


放在同一张商品目录表(主表),另外再有一个商品明细表

#2


mark

#3


如果套餐也有獨立的編碼,可以放在一起

#4


请问,楼上的大侠们,放在一起,有什么优势吗,管理统一还是查询方便或其他?

#5


按你写这个 可乐是单独商品,汉堡+可乐+薯条构成了一个套餐商品。
汉堡不是单品? 更是吧。这种应该放一起,就是单品+单品的套餐。

#6


商品一个表
套餐一个表
套餐明细一个表
吧。

#7


汉堡也是单品,薯条也是单品

#8


个人想法
单品表
商品名 商品Code  价格   种类
可乐     1     6       1
橙汁     2     6       1
汉堡A    3     12      2
汉堡B   4     12      2


套餐表
套餐名 套餐Code 价格
A      1    15

套餐明细表
套餐Code  种类1数量  种类1可选Code  种类2数量  种类2可选Code
1             2       1,2            1         3


商品的种类可分为 饮料 主食 甜品 油炸食品  其它

#9


从实际出发吧

单品一个表,有单独的单价
套餐一个表,有套餐单价
套餐--单品一个关系表,存放两个之间的关系和对应数量,有些套餐可以是两份鸡翅的

分开会清晰点,因为套餐不可能包含另一个套餐,放在一起不清晰。数据量不知道会不会多,如果多的话,放在一起影响性能。

#10


放一起方便查询吧 表多了也不好 主表多建立一个字段来记录套餐 可以为NULL 不是套餐就为NULL

#11


根据你的需求 我觉得还是分开比较好一点
如果套餐的数量不是很多的话 直接弄成一个码表来做

查询的时候直接通过一个ID关联 比较简单

#12


赞同这种做法
引用 9 楼 nbdba 的回复:
从实际出发吧

单品一个表,有单独的单价
套餐一个表,有套餐单价
套餐--单品一个关系表,存放两个之间的关系和对应数量,有些套餐可以是两份鸡翅的

分开会清晰点,因为套餐不可能包含另一个套餐,放在一起不清晰。数据量不知道会不会多,如果多的话,放在一起影响性能。

#13


分开吧。单品一个表,套餐一个表,套餐表引用单品主键,还能设置相关套餐属性。