从 SQLite 中的多个数据库更新

Fre*_*ek8 1 sql sqlite

我在两个不同的数据库中有两个表。我想更新的列数据DB1与列数据DB2基于ID。db1 包含的行比 db2 少,所以我不想复制整个表。我只想更新db1 中已经存在的行的数据列。

我正在使用 SQLite(并且仅限于使用它)。是否有我可以使用的查询来执行上述操作?

Col*_*Two 5

打开 db1,试试这个:

ATTACH 'path/to/db2' AS db2;
UPDATE main.table
SET data = (SELECT data FROM db2.table WHERE main.table.id = db2.table.id)
WHERE EXISTS(SELECT 1 FROM db2.table WHERE main.table.id = db2.table.id);
Run Code Online (Sandbox Code Playgroud)