【发布时间】:2022-11-16 01:42:54
【问题描述】:
在运行以下 MySQL UPDATE 语句时,我收到错误“错误代码:1054。‘where 子句’中的未知列‘t1.col2’”.
如何改写此查询,以便在子查询中可以访问 t1 的列?
UPDATE MyFirstTable AS t1
INNER JOIN (
SELECT col1, col2
FROM MySecondTable
WHERE col2 > t1.col2
) AS t2
ON t1.col1 = t2.col1
SET col3 = t1.col3;
【问题讨论】:
-
不要使用子查询——它是多余的。为所有对象名称添加表别名。
标签: mysql sql sql-update inner-join