同表数据复制
各位好
有一个问题请教大家,该如何写SQL语句
一,我想知道如何写SQL语句把下面的数据复制一遍同时把字段cc变成2,在同一个表里
表table1
字段aa(自动增长),字段bb,字段cc
1,aaaa,1
2,bbbb,1
3,cccc,1
复制成:
1,aaaa,1
2,bbbb,1
3,cccc,1
4,aaaa,2
5,bbbb,2
6,cccc,2
二,如果数据已经存在就只复制不同的
如:原来
1,aaaa,1
2,bbbb,1
3,cccc,1
4,dddd, 1
5,aaaa,2
6,bbbb,2
复制成:
1,aaaa,1
2,bbbb,1
3,cccc,1
4,dddd,1
5,aaaa,2
6,bbbb,2
7,cccc,2
8,dddd,2
------解决方案--------------------create table #(a int identity(1,1),b varchar(20),c int)
insert into #
select 'aaaa ',1 union all
select 'bbbb ',1 union all
select 'cccc ',1 union all
select 'aaaa ',2 union all
select 'bbbb ',2
select * from #
insert into # (b,c)
select b,2 from # a where not exists(select 1 from # where b=a.b and c=2)