mysql - mySQL 数据库的自动规范化——怎么做?

标签 mysql normalization

我有一个 mySQL 数据库,其中包含一个包含 80 列和 1000 万行的巨大表格。数据可能存在不一致。

我想以自动化和高效的方式规范化数据库。

我可以使用 java/c++/... 来完成,但我想尽可能多地在数据库内部完成。我猜数据库之外的任何工作都会大大降低速度。

关于如何做的建议?可以从哪些好的资源/教程开始?

不是在寻找关于什么是规范化的任何提示(使用谷歌找到了很多这样的东西)!

最佳答案

您需要研究列以识别“类似”实体并将它们分成单独的表格。最好的情况是,自动化工具可能会识别出某些列具有相同值的行组,但了解数据的人必须决定这些数据是否真正属于一个单独的实体。

这是一个人为的例子 - 假设您的列是名字、姓氏、地址、城市、州、 zip 。自动化工具可能会识别具有相同姓氏、地址、城市、州和邮政编码的同一家庭成员的行,并错误地认为这五列代表一个实体。然后它可能会拆分表格:

名字,ReferenceID

还有一张 table

ID、姓氏、地址、城市、州、 zip

明白我的意思了吗?

关于mysql - mySQL 数据库的自动规范化——怎么做?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1167382/

相关文章:

php - 如果设置了变量,则显示 $_SESSION 数据

php - 使用 PHP Laravel 5.6 的 Quickbooks 桌面应用程序

php - 停止mysql中的递归乱伦子父关系

python - 使用额外的索引键展平 DataFrame 嵌套列表/数组(用于时间序列)

sql - 组合排序

mysql - 如何将一行添加到 mysql 结果集以用作 html 选择框中的提示?

php - while 循环更新数据库中的日期只更新第一行?

floating-point - 规范化一个 float

matlab - 不同堆叠图像的图像归一化、图像范围和图像缩放

R- 将某些列从 0 标准化为 1,其值等于 0