表A
uaserid uaserid1 uaserid2 uaserid3
1 3 4 5
表B为空表,如何获得表A的数据插入表B,最终结果是
id
3
4
5
解决方法:
if
object_id
(
'
[A]
'
)
is
not
null
drop
table
[
A
]
go
create table [ A ] ( [ uaserid ] int , [ uaserid1 ] int , [ uaserid2 ] int , [ uaserid3 ] int )
insert [ A ]
select 1 , 3 , 4 , 5
if object_id ( ' [B] ' ) is not null drop table [ B ]
go
create table [ B ] ( [ id ] int )
insert into b(id)
select uaserid1 from A
union all
select uaserid2 from A
union all
select uaserid3 from A
select * from [ B ]
-- 测试结果:
/**/ /*
id
-----------
3
4
5
(所影响的行数为 3 行)
*/
go
create table [ A ] ( [ uaserid ] int , [ uaserid1 ] int , [ uaserid2 ] int , [ uaserid3 ] int )
insert [ A ]
select 1 , 3 , 4 , 5
if object_id ( ' [B] ' ) is not null drop table [ B ]
go
create table [ B ] ( [ id ] int )
insert into b(id)
select uaserid1 from A
union all
select uaserid2 from A
union all
select uaserid3 from A
select * from [ B ]
-- 测试结果:
/**/ /*
id
-----------
3
4
5
(所影响的行数为 3 行)
*/