将数据从一个列复制到另一个列中,从sqlite中的不同表中复制

时间:2011-03-31 16:08:22

标签: sql sqlite

我想将数据从Table2中的B列复制到Table1中的A列。列A的行为空,表1中存在已填充数据的其他列。因此,我需要从Table2中获取整个列B,并将所有这些值插入Table1中的A列。除了A列根本没有值之外,这两个表是完全相同的。

我如何在sqlite3中执行此操作?

3 个答案:

答案 0 :(得分:4)

使用:

INSERT INTO TABLE1
SELECT B,
       NULL,
       NULL,
       NULL
  FROM TABLE2

假设TABLE1列允许NULL值,则使用NULL作为占位符,无法从TABLE2填充多列。

答案 1 :(得分:0)

UPDATE TABLE1 SET A = (SELECT B FROM TABLE2 WHERE ...)

想想看,如果桌子真的相同,为什么你需要两个?无论如何,你也可以这样做:

BEGIN;
DELETE FROM TABLE1;
INSERT INTO TABLE1 (A, col1, col2, ...) SELECT (B, col2, col2, ...) FROM TABLE2;
COMMIT;

答案 2 :(得分:0)

试试这个: 插入表1(A)从表2中选择B