sqlserver - 复制表数据

 SQL SELECT INTO 语句可用于创建表的备份复件。

 语法:

 您可以把所有的列插入新表:

1
2
3
SELECT *
INTO New_TableName
From Old_TableName WHERE ...

 或者只把希望的列插入新表:

1
2
3
SELECT column_name1, column_name2, ...
INTO New_TableName
From Old_TableName WHERE ...

 从一个以上的表中选取数据也是可以做到的。

 下面的例子会创建一个名为 "Persons_Order_Backup" 的新表,其中包含了从 Persons 和 Orders 两个表中取得的信息:

1
2
3
4
5
6
7
8
9
10
SELECT
    Persons.LastName,Orders.OrderNo
INTO
    Persons_Order_Backup
FROM
    Persons
INNER JOIN
    Orders
ON
    Persons.Id_P = Orders.Id_P
 select into from 与 insert into select 区别:

 1.INSERT INTO SELECT语句

  语句形式为:Insert into Table2(field1,field2,...) select value1,value2,... from Table1
  要求目标表Table2必须存在,由于目标表Table2已经存在,所以我们除了插入源表Table1的字段外,还可以插入常量
2.SELECT INTO FROM语句
  语句形式为:SELECT vale1, value2 into Table2 from Table1
  要求目标表Table2不存在,因为在插入时会自动创建表Table2,并将Table1中指定字段数据复制到Table2中。
  比较两种语句的差别,选择适合自己情况的语句。
此外,ispass是个经过处理的字段,其值类型可能无法自动创建,所以,建议使用第一种形式的语句,建立一个表,然后再插入查询。

posted @   gygtech  Views(249)  Comments(0Edit  收藏  举报
相关博文:
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异
· 三行代码完成国际化适配,妙~啊~
点击右上角即可分享
微信分享提示