SQL複製資料表 (select * into 與 insert into)
SQL複製資料表 (select * into 與 insert into)
select * into 目標表名 from 源表名 where ..... insert into 目標表名(fld1, fld2) select fld1, 5 from 源表名
以上兩句都是將 源表 的資料插入到 目標表,但兩句又有區別的: 第一句(select into from)要求目標表不存在,因為在插入時會自動建立。
1:複製表結構及資料到新表
select * into 目的資料庫名.dbo.目的表名 from 原表名 select * into my0735home.dbo.infoMianTest from infoMian
2:備份表的一部分列(不寫*而寫出列的列表) select 列名1,列名2,列名3 into 目的資料庫名.dbo.目的表名 from 原表名 select id,title,mtype,stype,author,tel,nr into infoMianTest2 from infomian
3:備份表的一部分行(加WHERE條件) select * into 目的資料庫名.dbo.目的表名 from 原表名 where id<10 select * into infomiantest2 from infomian where id<10
4:備份表的一部分列(不寫*而寫出列的列表)和一部分行(加WHERE條件) select 列名1,列名2,列名3 into 目的資料庫名.dbo.目的表名 from 原表名 where id<10
5:只複製表的結構:如:SELECT * INOT t1 FROM titles WHERE 1=2
6:查詢結果來源於多個表:如: SELECT title_id,title,pub_name INTO t3 FROM titles t INNER JOIN publishers p ON t.pub_id=p.pub_id |