我曾尝试在两个表之间执行以下操作但没有成功,现在尝试在一个表中执行。
包含邮政编码、城市、州、名称(前三个字段之一)和类型(城市、州、邮政编码)的位置表
尝试创建父字段,例如Zip 会将它的城市作为父级
所以想做类似的事情
对于type为zip的每条记录,查找同一个city的记录,state where type为city,并使该ID为parentID
对于type为city的每条记录,查找type为state的city, state相同的记录,并将其ID设为parentID
最佳答案
你可以尝试这样的事情:
UPDATE temp_demo_loc AS a
INNER JOIN temp_demo_loc AS b ON a.City = b.City
SET a.ParentID = b.id
WHERE a.Type = 'Zip' AND b.Type = 'City';
UPDATE temp_demo_loc AS a
INNER JOIN temp_demo_loc AS b ON a.City = b.City
SET a.ParentID = b.id
WHERE a.Type = 'City' AND b.Type = 'State';
并为下一个级别做同样的事情。
关于mysql - 使用关键字段更新单个表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19483596/