📜  create table tablename as select * from tablename - SQL (1)

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

创建新表并复制数据

在SQL中,您可以使用CREATE TABLE tablename AS SELECT * FROM tablename语句来创建一个新的表,并将已存在的表的所有数据复制到新表中。

语法
CREATE TABLE new_tablename AS
SELECT * FROM existing_tablename;

这里的new_tablename是您希望创建的新表的名称,existing_tablename是您要复制数据的现有表的名称。

示例

假设我们有一个名为employees的表,其中包含员工的详细信息,如下所示:

CREATE TABLE employees (
  id INT,
  name VARCHAR(100),
  age INT,
  salary DECIMAL(10,2)
);

要创建一个名为employees_copy的新表,并将employees表中的所有数据复制到新表中,可以使用以下SQL语句:

CREATE TABLE employees_copy AS
SELECT * FROM employees;

执行上述语句后,将在数据库中创建一个新表employees_copy,并复制employees表中的所有数据到employees_copy表中。

注意事项
  • 新表的结构将与现有表完全相同,包括列名、数据类型和约束。
  • 复制的数据将保留现有表中的所有行和列。
  • 如果您只想复制现有表的一部分数据,可以修改SELECT子句以适应您的需求。
  • 如果新表已经存在,创建操作将失败。

希望对您有所帮助!