📜  sqlite 将表复制到另一个表 (1)

📅  最后修改于: 2023-12-03 15:20:18.347000             🧑  作者: Mango

SQLite将表复制到另一个表

在SQLite中,可以使用CREATE TABLE AS语句将现有表的内容复制到另一个表中。这个功能非常有用,因为它可以用于备份、迁移和复制数据。

下面提供几个示例,演示如何在SQLite中将表复制到另一个表。

示例1:将整个表复制到另一个表

要将表A的全部内容复制到表B中,可以使用以下语句:

CREATE TABLE B AS SELECT * FROM A;

这将创建一个名为B的新表,并将A表的全部内容复制到B表中。B表的结构和A表相同。

示例2:将表中的部分列复制到另一个表

如果只需要将A表中的一部分列复制到B表中,则可以使用以下语句:

CREATE TABLE B AS SELECT col1, col2 FROM A;

这将创建一个名为B的新表,并仅将A表中的col1和col2列复制到B表中。

示例3:将筛选后的行复制到另一个表

如果要筛选出A表中特定条件的行,并将这些行复制到B表中,则可以使用以下语句:

CREATE TABLE B AS SELECT * FROM A WHERE col1 = 'value';

这将创建一个名为B的新表,并仅将A表中col1列为'value'的行复制到B表中。B表的结构和A表相同。

示例4:仅创建目标表,不复制内容

如果只需要创建一个与A表结构相同的新表B而不复制A表的内容,则可以使用以下语句:

CREATE TABLE B AS SELECT * FROM A WHERE 0;

这将创建一个名为B的新表,并将A表的结构复制到B表中,但不复制任何行。

以上是在SQLite中将表复制到另一个表的示例。这个功能非常实用,可以帮助你备份、迁移和复制数据。