这个问题在这里已经有答案了:
如何为多种产品设计产品表,其中每种产品有多个参数(4个答案)
两年前关门了。
我知道问这种问题可能有点奇怪,但我很高兴听到你对这个案子的编辑和建议。
假设我有一些名为products和properties的表,这些表包括颜色、大小、体积和。。。存储在属性表中。我有麻烦如何存储我的产品属性像T恤有蓝色,绿色和大小的颜色。
我已经尝试过的方法是在产品表中使用json,如下所示: {color : 'red' , size : 'large' , available : 1} , {color : 'red' , size : 'small' , available : 0 } , {color :blue : size : Medium , available : 1}
, ...
但这似乎不太好,因为属性会有很多属性,而且json太大了,任何建议都会受到欢迎
p、 我正在使用laravel开发我的应用程序。
7条答案
按热度按时间qq24tv8q1#
---+------+
| 1 | 1 | 1 | 1 | 100 |(红色t恤大号-100件)
| 1 | 3 | 2 | 2 | 200 |(中号绿裤-200件)
| 1 | 2 | 3 | 三 | 150 |(蓝色小夹克-150件)
gudnpqoy2#
--+
| 1 | t恤 |
| 2 | 裤子 |
| 3 | 夹克 |
最后创建表“stock”
|身份证 | 尺寸|颜色|产品|数量|
+----+---------+
oalqel3c3#
-+
| 1 | 大的 |
| 2 | 小的 |
| 三 | 中等的 |
创建表“颜色”
| 身份证件 | 名称 |
+----+
wgxvkvu94#
json不会变得“太大”。
有一个表,其中一些字段作为常规列,另外还有一个json字段作为其他所有的杂项。
规则列的存在使搜索变得更容易。根据典型的搜索选择哪些列。使用mysql搜索它们,然后使用json测试(如果您有足够新的mysql),或者使用客户机代码挖掘json来完成过滤。
您的示例json代表3种不同的产品,而不是一种。作为一个单独的步骤(也许还有另一个表格),你可以将这3种“产品”归类为“tShirt”。显然,tshirt(etc)将在它自己的列中,而不一定在json中。
更多
643ylb085#
-+
i34xakig6#
| 1 | 红色 |
| 2 | 绿色 |
| 3 | 蓝色 |
创建表“产品”
|身份证 | 姓名 |
+----+
mzaanser7#
为了实现这一点,您需要处理数据库关系。
创建表“大小”
| 身份证件 | 名称 |
+----+