我正在尝试使用两个表的不同set列中的匹配数据将数据从一个SQLite表复制到另一个SQLite表。第二个表的列名称中包含空格和大写字母。
INSERT INTO table1(column1)
SELECT "Column 2"
FROM table2
INNER JOIN table2
ON table1.column3 = table2."Column 4";
表1的第3列和表2的第4列应匹配,以便从表2中选择并复制到表1中的数据在右行。我在上面的代码中收到一条错误消息,指出列名不明确:列2。关于如何移动此数据同时确保表2中的数据进入表1的正确行的任何建议?
样本数据:
table1
column1(animal):null,null
column3(id):ID 1,ID 3
table2
第2栏(动物类型):猫,狗,鸟
第4列(ID编号):ID 1,ID 2,ID 3
所需结果:
table1
column1(动物):猫,鸟
column3(id):ID 1,ID 3
table2
无变化
谢谢!
您想要的是UPDATE
表table1
:
UPDATE table1
SET column1 = (SELECT t2."Column 2" FROM table2 WHERE t2."Column 4" = table1.column3)