商城的表应该如何设计? 不在淘宝。如果是我也可能像你想的那样设计。只不过 SQL 写法有很多种 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 是预留字段还是用一个字符串 然后用SQL来解决呢 猜测一个字段,用某种固定格式,类似于json格式字符串把所有属性都存进去。ID 鞋子 尺码 颜色 价格1 aaa |36|37|38| |red|green|blue| |5|6|7纯属猜测,不对勿喷,毕竟我们表有用过这种格式,所以有此猜测。 商品表 id 基本信息(图片、名称、库存、单价、运费)商品参数表 id 参数值 父类id (分两级结构。父类的值存参数名,子类的值存参数值)商品型号表 id 商品id 价格 库存 型号名称 参数id串(|参数id|参数id|)根据参数id 商品id 就可以统计商品型号表中的 库存 和价格区间了 这里会有一个问题 比如有一个商品型号数据,他有如下参数 11|13|15|19|20现在我在购买页面只选了11|15|20 三个参数,怎么统计商品参数为11|15|20剩余的库存数呢把11|15|20 拆开参数型号数据保存的时候为|11|13|15|19|20|然后 参数数据like '%|11|%' and 参数数据like '%|15|%' and 参数数据like '%|20|%' 给你个连接 这个就是电商数据设计http://www.cnblogs.com/leefreeman/p/4060227.html 表一规格ID 规格参数1 颜色2 尺码3 式样4 腰围5 裤长……表二,产品ID 产品名称 产品类别 品牌1 皮鞋 服装鞋帽 耐克2 西裤 服装鞋帽 九牧王……表三商品ID 产品ID 价格 单位1 1 300 双2 1 400 双3 2 350 条4 2 390 条……表四ID 商品ID 规格ID 规格属性1 1 1 黑2 1 2 373 1 3 男 4 2 1 白……差不多就是这个意思了 另外你可以,按物品种类来设计表,比如,鞋子是一类,衣服是一张表,手表也可以当度设计一张表。因为物品种类是有限的,所有,规格表可以按种类来设计。鞋子的话,就两张表,一张基本信息表shoeBasicInfo表,另外一张规格表shoeSpecification表。这样就不存在你说的那种多个关联的问题了。 鞋子的话,就两张表,一张基本信息表shoeBasicInfo表,另外一张规格表shoeSpecification表。 产品基本表:产品id产品类型等所有产品都存在的属性鞋子表:产品id尺码颜色等等鞋子的规格属性衣服表:产品id颜色款式等等衣服的规格属性结果就是产品基本表的数据最多,但是通过加一点关键的索引,效率没问题。需要规格参数时,只需要直接关联鞋子或衣服表就好。具体属性如何分配,根据具体的业务来看,这个只是一种面向对象思想的简单使用,当然,这样的关系不能继续往下走,两层已经差不多了,三层以上就是累赘。至于一个字段有多个不定数量的值时,使用json是比较好的选择,现在各大语言对json的支持都非常好。个人建议少用。至于统计数据,是与这些表无关的,应该是一个类似日志的表来做这个事。一定得把日志和基本业务数据分开,不然你就等着折腾吧! A表ID 鞋子牌子 类型(就是B表id) 价格……..1 特步 1 552.。B表ID 颜色 尺码1 红 44 2 绿 433 统计数量Select * from A,B where A.id=B.id and B.颜色=红 and 尺码=43 假如羊毛衫的颜色属性值较少与藏蓝色相近的只有蓝色 那么商家在添加商品时选择商品类型羊毛衫接着选择系统定义的羊毛衫的属性,为颜色属性选择蓝色属性值 ,但是在自定义商品规格时他可以添加颜色这个规格 为这个规格添加“天蓝色”和“藏蓝色”两种规格值 这是很符合实际的 因为商品属性五花八门 不可能商城把所有属性值都收入进去 必须允许商家自定义而商家添加的”颜色“规格及里面的值是进入规格及规格选项表 其中规格表有商家id属性及货品id属性,这样保证这个规格只在此商家的此商品中使用这是我的理解 你可以去找一个成品来看一看,如果说PHP的ecshop好像叫这个名字,免费的,你可以下下来看看它的表结构 struts验证框架 validator 输出的格式 发送SOAPMessage报错,请高手帮忙看看是什么原因? 在javascript事件中是否可以执行服务器端脚本? 谁能说一下java这么获取时间? jsp页面调用js 什么是wap啊?200分! struts上传文件时,如何添加进度条? hibernate 从页面取值的一个问题 jsp连接access的问题 *.ocx 格式的文件是什么? JBoss 没有加任何的 Xms Xmx 的 JVM 内存限制,但是,在启动的时候,提示 Out Of Memory jsp引用js和css文件,为什么总是引用失败
是预留字段还是用一个字符串 然后用SQL来解决呢
ID 鞋子 尺码 颜色 价格
1 aaa |36|37|38| |red|green|blue| |5|6|7纯属猜测,不对勿喷,毕竟我们表有用过这种格式,所以有此猜测。
id 基本信息(图片、名称、库存、单价、运费)
商品参数表
id 参数值 父类id (分两级结构。父类的值存参数名,子类的值存参数值)
商品型号表
id 商品id 价格 库存 型号名称 参数id串(|参数id|参数id|)根据参数id 商品id 就可以统计商品型号表中的 库存 和价格区间了
这里会有一个问题 比如有一个商品型号数据,他有如下参数 11|13|15|19|20
现在我在购买页面只选了11|15|20 三个参数,怎么统计商品参数为11|15|20剩余的库存数呢
把11|15|20 拆开
参数型号数据保存的时候为|11|13|15|19|20|
然后 参数数据like '%|11|%' and 参数数据like '%|15|%' and 参数数据like '%|20|%'
http://www.cnblogs.com/leefreeman/p/4060227.html
规格ID 规格参数
1 颜色
2 尺码
3 式样
4 腰围
5 裤长
……表二,
产品ID 产品名称 产品类别 品牌
1 皮鞋 服装鞋帽 耐克
2 西裤 服装鞋帽 九牧王
……表三
商品ID 产品ID 价格 单位
1 1 300 双
2 1 400 双
3 2 350 条
4 2 390 条
……表四
ID 商品ID 规格ID 规格属性
1 1 1 黑
2 1 2 37
3 1 3 男
4 2 1 白
……差不多就是这个意思了
比如,鞋子是一类,衣服是一张表,手表也可以当度设计一张表。
因为物品种类是有限的,
所有,规格表可以按种类来设计。鞋子的话,就两张表,一张基本信息表shoeBasicInfo表,另外一张规格表shoeSpecification表。
这样就不存在你说的那种多个关联的问题了。
产品id
产品类型
等所有产品都存在的属性鞋子表:
产品id
尺码
颜色
等等鞋子的规格属性衣服表:
产品id
颜色
款式
等等衣服的规格属性结果就是产品基本表的数据最多,但是通过加一点关键的索引,效率没问题。需要规格参数时,只需要直接关联鞋子或衣服表就好。
具体属性如何分配,根据具体的业务来看,这个只是一种面向对象思想的简单使用,当然,这样的关系不能继续往下走,两层已经差不多了,三层以上就是累赘。
至于一个字段有多个不定数量的值时,使用json是比较好的选择,现在各大语言对json的支持都非常好。个人建议少用。
至于统计数据,是与这些表无关的,应该是一个类似日志的表来做这个事。一定得把日志和基本业务数据分开,不然你就等着折腾吧!
A表
ID 鞋子牌子 类型(就是B表id) 价格……..
1 特步 1 55
2.。
B表
ID 颜色 尺码
1 红 44
2 绿 43
3
统计数量
Select * from A,B where A.id=B.id and B.颜色=红 and 尺码=43
这是很符合实际的 因为商品属性五花八门 不可能商城把所有属性值都收入进去 必须允许商家自定义
而商家添加的”颜色“规格及里面的值是进入规格及规格选项表 其中规格表有商家id属性及货品id属性,这样保证这个规格只在此商家的此商品中使用
这是我的理解