读书人

如何把一个表的值用update更新到另一个

发布时间: 2013-10-11 14:52:39 作者: rapoo

怎么把一个表的值用update更新到另一个表中
现在有两个表t1和t2分别是
a b c
------------------
11 21
12 22
13 23

a c
------------------
11 31
12 32
13 33

想把t2表的c字段用update语句更新到t1中,想得到的结果

a b c
------------------
11 21 31
12 22 32
13 23 33

只想用update,不想再定义一个表变量然后insert,这样会浪费空间

create table #t1(a varchar(5), b varchar(5),c varchar(5)) 
insert into #t1 select '11', '21',null union all select '12', '22',null union all select '13','23',null

create table #t2(a varchar(5), c varchar(5))
insert into #t2 select '11', '31'
union all select '12', '32'
union all select '13', '33'


select * from #t1
select * from #t2

UPDATE #t1
SET #t1.c=#t2.c
FROM #t1 INNER JOIN #t2 ON #t1.a=#t2.a

select * from #t1
select * from #t2

drop table #t1
drop table #t2

读书人网 >SQL Server

热点推荐