sql_server 復制表


select * into 目標表名 from 源表名
insert into 目標表名(fld1, fld2) select fld1, 5 from 源表名

以上兩句都是將'源表'的數據插入到'目標表',但兩句又有區別的:

第一句(select into from)要求目標表不存在,因為在插入時會自動創建。

第二句(insert into select from)要求目標表存在,由於目標表已經存在,所以我們除了插入源表的字段外,還可以插入常量

復制用戶表

select * INTO [hxdl_test].[dbo].[Users] from [hxdl].[dbo].[Users]

1:復制表結構及數據到新表

SELECT * INTO 目的數據庫名.dbo.目的表名 FROM 原表名

2.備份表的一部分列(不寫*而寫出列的列表)

SELECT 列名1,列名2,列名3 into 目的數據庫名.dbo.目的表名 from 原表名

3.備份表的一部分行(加 WHERE 條件)

SELECT * INTO 目的數據庫名.dbo.目的表名 FROM 原表名 WHERE 條件

4.備份表的一部分列(不寫*而寫出列的列表)和一部分行(加WHERE條件)

SELECT 列名1,列名2,列名3 INTO 目的數據庫名.dbo.目的表名 FROM 原表名 WHERE 條件

5.只復制表的結構

這種情況,我們只要設置查詢條件不成立即可。我們把表 test1 的表結構復制到新表 test5:

SELECT * INTO test5 FROM test1 WHERE 1=2

6.復制的結構數據來源於多個表

其實我們要多個表的查詢結構作為一個數據源就行了,我們先看看表 test2 和 test4 目前的結果和數據:

然后我再把 id 相同下的 id,name,age 數據復制到新表 test6:

SELECT id,name,age INTO test6 FROM (SELECT test2.id,name,age FROM test2 INNER JOIN test4 ON test2.id = test4.id) as a

 

參考:

https://www.cnblogs.com/guorongtao/p/11607655.html

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM