我有 2 个mysql表:
地点
- id_location
- 城市
location_geo
- ip_start
- ip_end
- id_location
问题是位置表中至少有1/4的城市是重复记录。我可以轻松地运行此查询并删除那些重复的记录:
ALTER IGNORE TABLE location ADD UNIQUE INDEX idx (city);
但在此之前,我还必须使用唯一的城市 ID 更新 location_geo 表。例如,这是一种可能性:
地点
- 129,洛杉矶
- 145,纽约
- 176,洛杉矶
- 856,洛杉矶
location_geo
- 16778240, 16778751, 129
- 16817792, 16819711, 176
- 16820992、16822527、129
- 16827904、16828415、856
- 16829440, 16832511, 145
- 16832512, 16832639, 129
location_geo中的 id_location 字段应更新为位置表中的第一个可用 ID,以便示例中的结果应显示:
- 16778240, 16778751, 129
- 16817792, 16819711, 129
- 16820992、16822527、129
- 16827904、16828415、129
- 16829440, 16832511, 145
- 16832512, 16832639, 129
顺便说一句, location_geo表中有 2,021,182 条记录。
任何帮助将不胜感激。