如何在SQL中使用另一个表中的一列创建新表?

时间:2017-07-20 20:26:56

标签: mysql

我是SQL新手,无法正确获取此特定流程的语法。我只想从预先存在的表中获取一列名称,并使用该列创建一个新的列表,然后选择该表。

我收到一条错误消息,指出newTable已经存在。

现在我的代码:

BEGIN
    CREATE TABLE newTable (name varchar(255));
    INSERT INTO newTable SELECT name FROM oldTable;
    SELECT * FROM newTable;
END

2 个答案:

答案 0 :(得分:0)

ALTER TABLE table_name
ADD column_name datatype;

答案 1 :(得分:0)

您可以考虑先删除表,然后使用CTAS construct

重新创建
DROP TABLE IF EXISTS newTable ;
CREATE TABLE newTable (name varchar(255)) AS
SELECT name FROM oldTable;

(OR)

CREATE TABLE IF NOT EXISTS newTable (name varchar(255)) AS
SELECT name FROM oldTable;