1 可以取别名,但只能用在子查询中:
eg:
错:update t_sys_user u set u.id =1
正确:update t_sys_user u set id =1
错: update t_sys_user u set u.id =(select pid from t_sys_alias a where a.id = u.id)
正确:update t_sys_user u set id =(select pid from t_sys_alias a where a.id = u.id)
2 mysql如果同表进行更新,需要先查询数据,将此作为一张表再进行关联
错: update t_sys_user u set id =(select substr(pid,1,12) from t_sys_user uu where uu.id = u.id)
正确:update t_sys_user u set id =( select id2 from (select id, substr(pid,1,12) id2 from t_sys_user ) t where t.id = u.id)