SQLServer/Oracle根据查询结果集创建新表

SQLServer

1、创建新表并复制旧表结构和数据

SELECT * INTO table_new FROM table_old;

2、创建新表并复制旧表部分结构和部分数据

SELECT * INTO table_new FROM (SELECT c1,c2,c3 FROM table_old WHERE 1=1) T;

3、创建新表并只复制旧表结构

SELECT * INTO table_new FROM (SELECT * FROM table_old WHERE 1=2) T;

Oralce

1、创建新表并复制旧表结构和数据

CREATE TABLE table_new AS SELECT * FROM  table_old;

2、创建新表并复制旧表部分结构和部分数据

CREATE TABLE table_new AS SELECT c1, c2, c3, c4 FROM table_old;

3、创建新表并复制旧表结构和数据后重新指定新表列名

CREATE TABLE table_new (c1,c2,c3,c4) AS SELECT c5, c6, c7, c8 FROM table_old;

4、创建新表并只复制旧表结构

CREATE TABLE table_new AS SELECT * FROM table_old WHERE 1=2;

MySQL

1、创建新表并复制旧表结构和数据

CREATE TABLE table_new (SELECT * FROM table_old);

2、创建新表并复制旧表部分结构和部分数据

CREATE TABLE table_new (SELECT c1,c2,c3 FROM table_old WHERE 1=1);

3、创建新表并只复制旧表结构

CREATE TABLE table_new (SELECT * FROM table_old WHERE 1=2);
posted @ 2021-03-12 10:25  Journey&Flower  阅读(3533)  评论(0编辑  收藏  举报