求一update语句.
两表结构相同如下: (如果 school 相等 则TableA.school= TableB.school)
TableA
id name school
1 张三 一中
2 李四 二中
3 王五 三中
TableB
id name school
1 张三 人大
2 陈七 清大
3 李四 北大
如何Updata TableA 变成如下结果 :
id name school
1 张三 人大
2 李四 北大
3 王五 三中
这个Update 语句该如何写?
问题点数:20、回复次数:11Top
1 楼wgsasd311(自强不息)回复于 2005-09-09 13:33:54 得分 0
update tablea set school=b.school from tableb b where tablea.id=b.idTop
2 楼libin_ftsafe(子陌红尘:TS for Banking Card)回复于 2005-09-09 13:34:14 得分 6
update a
set
school = b.school
from
TableA a,
TableB b
where
a.name = b.nameTop
3 楼vivianfdlpw()回复于 2005-09-09 13:36:00 得分 6
update tableA
set school=B.school
from tableA A
join tableB B on A.bane=B.nameTop
4 楼libin_ftsafe(子陌红尘:TS for Banking Card)回复于 2005-09-09 13:36:41 得分 7
--生成测试数据
create table #TableA(id int,name varchar(10),school varchar(10))
insert into #TableA select 1,'张三','一中'
insert into #TableA select 2,'李四','二中'
insert into #TableA select 3,'王五','三中'
create table #TableB(id int,name varchar(10),school varchar(10))
insert into #TableB select 1,'张三','人大'
insert into #TableB select 2,'陈七','清大'
insert into #TableB select 3,'李四','北大'
--执行更新语句
update a
set
school = b.school
from
#TableA a,
#TableB b
where
a.name = b.name
--查看更新结果
select * from #TableA
/*
id name school
---- ------ ------
1 张三 人大
2 李四 北大
3 王五 三中
*/Top
5 楼lizhaogui()回复于 2005-09-09 13:36:50 得分 0
update a
set
a.school = b.school
from
TableA a,
TableB b
where
a.name = b.name
Top
6 楼cpucontrol(可以包含)回复于 2005-09-09 13:49:58 得分 0
大家不要笑我,我不知道join tableB B on A.bane=B.name 是什么意思
Top
7 楼cpucontrol(可以包含)回复于 2005-09-09 13:50:33 得分 0
谁告诉我一下? 谢谢Top
8 楼lisiyong(小样)回复于 2005-09-09 14:04:15 得分 1
是表示连接
相当与 where a.name = b.name
Top
9 楼cpucontrol(可以包含)回复于 2005-09-09 14:05:25 得分 0
报错操作符丢失 在 b.school from #TableA a, 里
update a
set
school = b.school
from
#TableA a,
#TableB b
where
a.name = b.nameTop
10 楼cpucontrol(可以包含)回复于 2005-09-09 14:10:10 得分 0
语法错误操作符丢失如何是好啊!!Top
11 楼cpucontrol(可以包含)回复于 2005-09-09 14:14:30 得分 0
在"b.school
from
#TableA a,
#TableB b " 里操作符丢失 这是为何啊?
Top




