Alg*_*lgo 2 mysql phpmyadmin php
我在 MYSQL 中有这个uom表:
| ID | 乌姆 |
|---|---|
| 1 | 片 |
| 2 | 打 |
| 3 | 放 |
MYSQL 中的产品表:
| ID | 编号 | 标题 | 乌姆 |
|---|---|---|---|
| 1 | 19421 | 测试1 | 1:1:10.00,3:1:56.17 |
| 2 | 7878 | 测试2 | 1:1:24.33 |
| 3 | 123456 | 测试3 | 2:12:63.22,3:1:14.00 |
| 4 | 666565 | 测试4 | 1:1:10.00,2:12:20.00,3:1:30.00 |
该产品表是否需要标准化?有人说这个表没有多值字段/数据......这是正确的吗?简而言之,产品表包含产品的名称、标题和 uom列。Uom 列包含存储单位、数量包以及基于单位的价格。这意味着每种产品都有不同的单位和基于单位的价格。
例如,test4 产品具有三个单位 1:1:10.00, 2:12:20.00, 3:1:30.00。我们以第一个单元为例:1:1:10.00。
所以,1:1:10.00是一个单位。2:12:20.00并且3:1:30.00是不同的单位。所以,test4一共3个单元。
我会投票赞成使其正常化。测量单位,即一UOM列,实际上应该是测量单位,例如“米”,“码”,“磅”,“吨”等。我在您当前存储的值中根本看不到这一点它,比如1:1:10.00。您甚至自己说,这些是不同的数据点“第三个数字是价格”。那么你可能应该有一个Price专栏。如果您只想存储列中的ID,那没问题,但我建议适当地标准化其他数据点。UOMUOM
通过将多个数据点填充到一列中,您会损害该列的可读性、可维护性和查询能力。如果您需要针对该列运行函数来解析其中的某些数据点,它甚至可能会影响性能,特别是如果这些数据点在查询中的任何谓词( JOIN, WHERE,子句)中使用。HAVING