1

在 R 中工作并尝试通过使用以下代码运行与第二个表的左连接来将列添加到现有的 MonetDBLite 表:

dbSendQuery(mdb, "UPDATE table1 
   SET table1.variable = table2.variable 
   FROM table1  LEFT JOIN table2 ON table1.identifier = table2.identifier;")

返回错误:

Server says 'syntax error, unexpected '.', expecting '=' in: "update table1 
   set table1."

MonetDB 不支持点分隔符来引用表中的字段吗?非常感谢您的任何见解。

4

1 回答 1

1

想出了一个解决方法,它涉及创建第三个表,而不是更新现有表,然后删除原始表。(很确定有一种更优雅的方法可以做到这一点,但是......)

dbSendQuery(db, "create table table3 as
select a.*,
b.variable
from table1 as a
left join table2 as b
on 
(a.identifier = b.identifier);")

dbRemoveTable(db, "table2")
于 2016-11-16T13:46:22.240 回答