sqlserver 把一张表数据插入另一张表数据

两张表 table1 A,B两列,table2 A,B 两列 , table1数据是table2部分,现在table2 是完全的表,table1只有A列有数据,现在要根据A列把A列数据相同的B列值从table2更新到table1中去,怎么写语句?

update table1 set B=(select B from table2 where table2.A=table1.A) 我这样写报错: 子查询返回的值不止一个。当子查询跟随在 =、!=、<、<=、>、>= 之后,或子查询用作表达式时,这种情况是不允许的。

说的什么跟什么。。要想人家看得懂就把列字段说完整,别两张表都是AB两列。你可以这样试试,
insert 哪些列 into table1 values (select 哪个字段 from table2)

试试视图或者用触发器吧