我有两个表希尔的更新MySQL表:需要数以百万计的行
Cities
Region| City Name
States
ID| State | Region_Key
我需要在城市表做一个更新查询,像这样即设置cities.region = statres.id其中状态.region_key = cities.region
问题是,城市数据库有超过270万条记录,我试图做这样的查询只为mysql挂起并消失。
update cities c, states c set c.region = s.id where c.region = s.region_key
编辑===================
这是我使用,但它不是工作的SQL我得到一个错误说的不正确使用UPDATE和LIMIT
update cities w, states s
set w.region_id = s.id,
w.updated = 1
where w.region = s.w_code and w.updated = 0
LIMIT 10000
分解成批次,可能使用另一列(如日期时间),或者如果不适合引入row_number() – 2011-05-19 06:28:48
您使用别名“c”两次,对于每个表 – bart 2011-05-19 11:15:47