1

R で作業し、次のコードを使用して 2 番目のテーブルとの左結合を実行して、既存の 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

既存のテーブルを更新するのではなく、3 番目のテーブルを作成してから元のテーブルを削除するという回避策を考え出しました。(これを行うためのよりエレガントな方法があることは確かですが...)

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 に答える