第一、只復制表結構到新表
create table 新表 select * from 舊表 where 1=2
或者
create table 新表 like 舊表
第二、復制表結構及數據到新表
create table 新表 select * from 舊表
第三、已復制好表結構,將舊表的數據插入新表中
insert into 新表 select * from 舊表 where 條件
insert into select 語句從一個表復制數據,然后把數據插入到一個已存在(目標表已存在)的表中。目標表中任何已存在的行都不會受影響.
INSERT INTO TABLE2 SELECT * FROM TABLE1 WHERE .........; INSERT INTO TABLE2 SELECT COLUMN1,COLUMN2 FROM TABLE1 WHERE.....; INSERT INTO TABLE2(COLUMN1,COLUMN2) SELECT COLUMN3,COLUMN4 FROM TABLE1 WHERE ....;
第四、Sql Server 中 的 select into from 類似 Mysql 中的 create table 新表 select * from 舊表
select into from 將查詢出來的數據整理到一張新表中保存,表結構與查詢結構一致。
select * into table2 from table1 where......; select column1,column2 into table2 from table1 where......; select column1,column2 into table3 from table1 left join table2 on......;
注:
在Oracle/Mysql中select into from不可以使用,用create table tablename select代替該功能!!! 在Sql Server中可以正常使用。
select into from 和 insert into select 都是用來復制表 兩者的主要區別為: select into from 要求目標表不存在,因為在插入時會自動創建;insert into select from 要求目標表存在。