我有7个MySQL表,其中包含大约17000行中的部分重叠和冗余数据。所有表格都包含学校的名称和地址。有时候同一所学校的名字略有不同,有时同一所学校会出现在多个表格中,同样的名称或地址也会有细微差别。帮助正常化数据库的建议和工具
我的任务是创建一个带有ID,名称和城镇/城市ID字段的表,其中将包含来自7个表的数据。将有一个单独的表为id和名称字段的城镇。
由于原始表格没有用于城市的单独字段这一事实使其变得复杂,因此必须从具有非常不同格式的数据的地址字段中提取。
我意识到这些大部分都必须手动完成,我已经硬化了我的灵魂,并且我已经准备好处理这将给我带来的活生生的地狱。我的问题是:
- 你将如何开始这样的任务?什么是智能策略尽可能多地实现自动化?
- 有没有可以提高速度的工具?比如可以比较字符串的东西,确定他们的“相似性”并提出可能的重复?
谢谢!
谢谢你的出色建议!我写了一个快速perl脚本从教育部网站下载所有匈牙利学校的列表,并从数据中生成sql插入语句。这为我节省了大约2周的时间。再次感谢!! – neo2862 2010-09-16 10:03:35