Home  >  Article  >  Backend Development  >  再次咨询数据库设计方案。

再次咨询数据库设计方案。

WBOY
WBOYOriginal
2016-06-23 13:52:251002browse

再次咨询数据库设计方案。

想自己开发一个服装系统,遇到一个问题,

就是一款服装可能有多个颜色,有多种尺寸(个数不一),不同颜色(个数不一),不同尺寸不同颜色还不同价格,我勒个去。

想问问江湖大侠们,你们遇到这种情况,怎么拨,还能方便进行产品加入购买车功能??


回复讨论(解决方案)

我觉得
1、服装表 要一个默认的价格
2、不同颜色不同尺寸的服装对应表一个价格,默认为0
选服装的时候先检查  是否有不同尺寸不同颜色的价格


1服装表,字段:服装id,服装名字
2尺寸表:尺寸id,服装id,尺寸大小
3颜色表:颜色id,尺寸id,服装id,颜色名
4价格表:价格id,颜色id,尺寸id,服装id,价格多少
当然,这样设计估计会比较复杂,但是简单明了,也可以设计2张表,第一张不变,其他的几张合起来在一张表里,不过这样的话第二张表会比较大,但是搜索起来简单点

服装嘛不外是:
品牌/产地
款式
型号
颜色
价格
数量

有什么不好组织的?

1服装表,字段:服装id,服装名字
2尺寸表:尺寸id,服装id,尺寸大小
3颜色表:颜色id,尺寸id,服装id,颜色名
4价格表:价格id,颜色id,尺寸id,服装id,价格多少
当然,这样设计估计会比较复杂,但是简单明了,也可以设计2张表,第一张不变,其他的几张合起来在一张表里,不过这样的话第二张表会比较大,但是搜索起来简单点



这种设计应该比较麻烦,不够简明。

服装嘛不外是:
品牌/产地
款式
型号
颜色
价格
数量

有什么不好组织的?



它是一个款有多个颜色及尺寸,
例如
颜色有  红色 蓝色 绿色
尺寸有  150CM 160CM 170CM

每个颜色或尺寸都有不同的价格

也就是上面的选择可能是 
红色 150cm      
红色 160cm
红色 170cm
蓝色 150cm
.
.
.
.
.

这样9种价格。

服装嘛不外是:
品牌/产地
款式
型号
颜色
价格
数量

有什么不好组织的?


难道是对 款式  Group By 吗?

求大老再指点指点。

颜色表             尺寸表             库存表
id    color        id     size          id        name      color     size    num     price
1     red           1     150cm       1         短袖           2           1         50      78
2     blue          2    160cm       2         短裤           1           2         66      88

加入购物车就直接复制库存表中的字段到购物车表就可以了

顾客妈的是具体的服装,group 算什么?

品牌/产地、款式、型号、颜色、价格
只要有一个不同,就是一条记录

品牌/产地、款式、型号、颜色、价格
只要有一个不同,就是一条记录



http://item.taobao.com/item.htm?spm=a1z10.5.w5003-8066027476.1.WQfhO4&id=40200659778&scene=taobao_shop
点击上面连接

像这样子的,选择不同款,不同颜色,可能不同价格,但是它的标题都是同一个啊。

其实我就是想实现这样的效果,可能是我表达有误。

那不过是个多条件查询
我建议的数据结构正好适合这种查询

那不过是个多条件查询
我建议的数据结构正好适合这种查询


昨晚想了又想,也找了一些语句,发现都没有办法实现,实在摸不着头脑

还望老大 再详细指点一下,非常感谢。

服装表:品牌、款式、基本价格
颜色表:品牌、颜色、增加价格
尺寸表:品牌、尺寸、增加价格

衣服表:品牌、款式、颜色、尺寸、衣服价格

用户选择服装品牌,显示基本价格;选择不同颜色和尺寸增加价格,获取最终价格,保存到衣服表或者缓存到session

怎么这么不开窍呢?
用 品牌/产地、款式 查表,就会得到对应商品的 型号、颜色、价格、库存数量
有了这些数据,写界面还难吗?

两张表。
一张放公共信息,一张放私有信息。
对于一件衣服来说,它的名称,产地等是公共信息,而它的颜色,尺寸和价格等就是私有信息。

怎么这么不开窍呢?
用 品牌/产地、款式 查表,就会得到对应商品的 型号、颜色、价格、库存数量
有了这些数据,写界面还难吗?



有时候确实开不了窃,可能是自己少于对经验总结,真心不好意思。

我打算这样设计:

ID     产品名称          产品ID         型号              颜色              价格                 库存数量
id      Pro_Name      Pro_id        pro_type      pro_color      pro_price         pro_num
1       小童装夏装        0               kids_001     红色                95                      100
 2                                  1                                     蓝色                 98                     100
 3                                   1                                    紫色                 92                      100
.
.
.
.
.
.

先添加一个产品的基本资料,然后再对该产品继续添加多个不同价格,颜色等。

你看这样一张表行不行?是否还有优化空间?

ID     产品名称      产品ID      型号         颜色           价格         库存数量id     Pro_Name      Pro_id      pro_type     pro_color      pro_price    pro_num1      小童装夏装    01          kids_001     红色           95           1002      小童装夏装    02          kids_001     蓝色           98           1003      小童装夏装    03          kids_001     紫色           92           100

对于顾客和商家而言,所有的商品都是独立的,没有其中项。只有捆绑销售的是个例外

我觉得不一定要全部由数据库来完成。

颜色,尺寸,这些基本上是固定的,也就那么一些,这些可以全部列举出来。

生成一个xml,查询或啥的,读取xml

xmlid匹配数据库

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Previous article:帮忙看下这个怎么实现Next article:tp数组输出