比尔云BierYun--阿里云最新优惠活动
阿里云优惠码丨阿里云代金券

SQL Server 复制表结构以及数据,去除表中重复字段

SQL Server 复制表结构以及数据,去除表中重复字段

 

–复制另一个数据库中的某张表的结构及数据
–select * from Test.dbo.TestTable(查询表中所有数据)
–into [表名] 插入当前数据库新表,如果没有该表就创建

select * into TestCopy from Test.dbo.TestTable

–只复制表结构(1!=1等价于1<>1,只要where后的为false就可以)
–把查询出的数据插入到新表,如果没有数据就只是复制表结构了
select * into TestCopy from Test.dbo.TestTable where 1!=1

–into #[表名]  #代表临时表
select * into #TestCopy from Test.dbo.TestTable

–复制某个字段到新表(字段名相同)
select TestID into TestCopy from Test.dbo.TestTable

–复制某个字段到新表(字段名不同)
–下面的写法不正确,可能插入某一个字段时表必须存在
select TestID into TestCopy1(TestCopy1ID) from Test.dbo.TestTable

–复制某个字段到新表(重新命名字段名)
–在查询时使用别名新表中的字段名是别名而不是本名
select TestID as TestCopyID into TestCopy1 from Test.dbo.TestTable

–上面是新表不存在的时候,当表存在时
insert into TestCopy1 select * from Test.dbo.TestTable

–插入一个字段的数据到新表(可以插入到别的字段中去)
insert into TestCopy1(TestName) select TestID from Test.dbo.TestTable

–复制同一张表中数据(没有主键,复制的数据在上面不在下面)
insert into TestCopy(testID) select testName from TestCopy

 

 

–去除表中重复字段
–row_number() over 统计相同的字段并给每条数据加上一个标号,>1代表重复数据,删除掉>1的数据

delete t from
(select row_number() over (partition by testID,testName,price order by testID) as p1,* from TestCopy) as t
where t.p1>1

原文地址https://www.cnblogs.com/privategardens/p/10761009.html

未经允许不得转载:阿里云代金券 » SQL Server 复制表结构以及数据,去除表中重复字段

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

强烈推荐

高性能SSD云服务器ECS抗攻击,高可用云数据库RDS