sql复制表有几种方式,下面做个总结,方便使用
select * into 目标表名 from 源表名 insert into 目标表名(fld1, fld2) select fld1, 5 from 源表名 |
第一个 目标表不存在,会创建新表,只是复制数据,但不会复制索引等信息
第二个表 目标表是存在的 可以指定列 从源表复制并可以指定相关列
常用的就这两种用法,下面取自网络
复制表结构和数据SQL语句
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
转自:http://liujiassd.blog.163.com/blog/static/8311714320094283334854/