使用简单的SQL查询找不到列错误

时间:2010-08-19 06:28:38

标签: sql sqlite syntax

我知道它几乎就在那里,但是基地告诉我,当我知道它在那里时它找不到一个名为table1.id的列!

UPDATE table2 SET col1 =(SELECT field1 FROM table1 WHERE table2.id = table1.id)WHERE table1.id = table2.id

4 个答案:

答案 0 :(得分:2)

UPDATE table2 SET col1 = (SELECT field1 FROM table1 WHERE table2.id = table1.id)

table1在外部SQL中是未知的。

答案 1 :(得分:0)

我从您的查询中得到的信息是什么

UPDATE table2 SET col1 = t1.field1
FROM table2 t2 INNER JOIN table1 t1 ON t2.id = t1.id

答案 2 :(得分:0)

请尝试使用INNER JOIN子句,而不是使用WHERE子句。确实很晚,所以原谅我的代码哈哈

UPDATE table2
SET col1 = (SELECT field1
            FROM table1
            WHERE table2.id = table1.id)
INNER JOIN table1
ON table2.id = table1.id

答案 3 :(得分:0)

选项1:无需具有外部WHERE子句 选项2:不要不必要地使用内部查询。请改用内部连接