错误操作1093 - You can't specify target table 'api' for update in FROM clause
UPDATE api
SET relation = 16
WHERE
id IN ( SELECT a.id FROM api a WHERE project_id = 11 AND NAME LIKE 'szmsg%' );
正确操作
# 先查出条件,然后把这个条件当成一个临时表t2
UPDATE api
SET relation = 16
WHERE
id IN ( SELECT id FROM ( SELECT a.id FROM api a WHERE project_id = 11 AND NAME LIKE 'szmsg%' ) t2 );
网友评论