Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/82.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
多值属性库存/数量的MYSQL表_Mysql_Sql - Fatal编程技术网

多值属性库存/数量的MYSQL表

多值属性库存/数量的MYSQL表,mysql,sql,Mysql,Sql,我想根据产品属性管理产品的库存/数量,例如 例如: 我只是停留在表上,我已经创建了下面的表,但是下面的代码一次只能针对一个属性。我有一个代码,我们可以在其中添加无限的属性,因此将所有属性合并为一个数量 id quantity 1 10 2 20 3 25 请帮助我了解需要添加或更改哪些sql表,以获得所需的功能 正如您所看到的,一次只有一个属性值作为数量的目标,我需要在单个记录中获取多个属性值作为数量的目标。您需要一个单独的库存表,该表包含每个项目及其数量的一行 id quantity

我想根据产品属性管理产品的库存/数量,例如 例如:

我只是停留在表上,我已经创建了下面的表,但是下面的代码一次只能针对一个属性。我有一个代码,我们可以在其中添加无限的属性,因此将所有属性合并为一个数量

id quantity
1  10
2  20
3  25
请帮助我了解需要添加或更改哪些sql表,以获得所需的功能


正如您所看到的,一次只有一个属性值作为数量的目标,我需要在单个记录中获取多个属性值作为数量的目标。

您需要一个单独的库存表,该表包含每个项目及其数量的一行

id quantity
1  10
2  20
3  25
然后,您的
选项\u桥
表将包含
inventory.id
的外键,而不是数量:

id option_id value_id inventory_id
1  1         1        1
2  2         3        1
3  3         5        1
这三行代表

Size : 40 + Color : Blue + Waist : 32 = Quantity : 10
这一点是,一个通用的
库存id
用于将定义产品特定变体的所有选项组合在一起。如果将数量放入
options\u bridge
表中,则无法将引用同一项目的行链接在一起


当你购买或出售一件物品时,你只需要在一个地方调整数量。这是更规范化的。

它仍然是一样的,只是用数量id替换了数量。上表中的第一个记录表示(大小=40,数量10),我想将所有属性组合在一个记录中以表示数量。这就是规范化。当你出售其中一件物品时,你只需要在一个地方减少数量。这似乎不是你需要的。我不知道这是EAV模型的正常特性。我建议您仔细阅读规范化。您不应该在一个表的多行中复制依赖值,因此,如果有多行具有相同的数量,则该值不规范化。