You can't specify target table 'tpd' for update in FROM clause
时间: 2023-08-16 15:09:17 浏览: 97
mysql中You can’t specify target table for update in FROM clause错误解决方法
这个错误通常是因为在 UPDATE 语句中,在 FROM 子句中指定了要更新的表,而且在 WHERE 子句中使用了这个表。
解决方法是使用一个子查询来代替 FROM 子句中的表。例如:
```
UPDATE tpd SET column1 = value1 WHERE id IN (SELECT id FROM tpd WHERE condition);
```
其中,子查询 `SELECT id FROM tpd WHERE condition` 会返回需要更新的行的 id,然后将这些 id 传递给 UPDATE 语句的 WHERE 子句。这样就可以避免在 FROM 子句中指定要更新的表而导致的错误。
阅读全文