gpt4 book ai didi

python - SQL - 使用临时表更新主表

转载 作者:太空宇宙 更新时间:2023-11-03 17:31:44 24 4
gpt4 key购买 nike

我有一个关于 SQL 的问题,特别是 SQLite3。我有两个表,我们将它们命名为 main_tabletemp_table。这些表基于相同的关系架构,因此它们具有相同的列但不同的行(值)。

现在我想做的是:

对于 main_table 的每一行,如果 temp_table 中存在具有相同 ID 的行,我想替换它。否则我想保留表中的旧行。

我正在考虑使用一些连接,但它没有提供我想要的东西。

你能给我一些建议吗?

编辑:附加信息:

我想避免写入所有列,因为这些表包含数十个属性,并且由于我必须更新所有列,因此没有必要写出所有列。

最佳答案

如果表具有相同的结构,您可以简单地使用SELECT *:

BEGIN;

DELETE FROM main_table
WHERE id IN (SELECT id
FROM temp_table);

INSERT INTO main_table
SELECT * FROM temp_table;

COMMIT;

(这还将在 temp_table 中添加以前在 main_table 中不存在的任何新行。)

关于python - SQL - 使用临时表更新主表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31748654/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com