MYSQL - 在UPDATE语句的WHERE子句中使用相同表的子查询
MYSQL - 在UPDATE语句的WHERE子句中使用相同表的子查询
使用以下代码,我遇到了一个错误“# 1093-您不能在FROM子句中指定目标表't1'进行更新”:
UPDATE `table1` t1 SET t1.name = 'abc' WHERE t1.id = 165 AND NOT EXISTS ( SELECT t2.id FROM `table1` t2 WHERE t2.id != 165 AND t2.name = 'abc' )
但以下代码没有问题:
UPDATE `table1` t1 SET t1.name = 'abc' WHERE t1.id = 165 AND NOT EXISTS ( SELECT t2.id FROM `table2` t2 WHERE t2.id != 165 AND t2.name = 'abc' )
我错在哪里了?