sqlite:如何在连接中将数据从一行更新到另一行

时间:2011-05-24 18:40:02

标签: sqlite join

SQLite不支持使用连接进行更新。 (见this closely related SO question

假设我有一个表data,其中包含以下列:

INTEGER id
TEXT foo
TEXT bar
TEXT baz

我还有一个表格selection,其中一列INTEGER id

我想要做的是给出一个整数ID srcID,将foobar值从data行src复制到{{1} } id与选择表匹配的行。

在“标准”SQL(或至少MySQL变体)中,这类似于

data

UPDATE data, selection, data as src SET data.foo = src.foo, data.bar = src.bar WHERE data.id = selection.id AND src.id = ? =预设语句值设置为?

有什么建议吗?

1 个答案:

答案 0 :(得分:0)

上次我使用Oracle时,我认为它也不支持你的语法。

我不知道如何在SQLite中使用单个SQL命令来做到这一点,但您是否考虑过在数据表上使用UPDATE触发器?