update t_area t set t.parent_name = (select t2.name from t_area t2 where t.parent_id = t2.id);
如果用户使用如上的sql语句就会报错,因为同一张表即作为被更新的对象,又作为被查询的对象
如果一定要使用这样的语句,可以尝试以下写法:
update t_area t set t.parent_name = (select t2.name from (select * from t_area) t2 where t.parent_id = t2.id);
效率可能会比较低