^_^ 请教一个SQL语句 ^_^
在网络上看到一个SQL语句的面试题,一时间想不出来这一句SQL怎么写,请教各位,呵呵。
——————————————————————————————————————————
有两个表Table_A和Table_B,字段和内容分别是
表 Table_A
userid username Address
------------------------------------
1 A
2 B
3 C
表 Table_B
userid username Address
----------------------------
1 D
2 E
3 F
问题一:请写出一条SQL语句,目的是将Table_B和Table_A比较,如果userid相同,就把Table_B中Address的值写到Table_A的字段Address里。
问题二:请写出一条SQL语句,目的是将Table_B和Table_A比较,如果userid相同,就把Table_A中的username的值、Table_B中的Address的值读出来。
问题点数:30、回复次数:4Top
1 楼samfeng_2003(凤翼天翔)回复于 2006-03-04 20:40:12 得分 5
declare @t table
(userid int,username varchar(20),address varchar(20))
declare @t1 table
(userid int,username varchar(20),address varchar(20))
insert @t
select 1,'A',null union all
select 2,'B',null union all
select 3,'C',null
insert @t1
select 1,null,'D' union all
select 2,null,'E' union all
select 3,null,'F'
update @t set address=b.address
from @t a,@t1 b
where a.userid=b.userid
select * from @t
select b.userid,a.username,b.address
from @t a,@t1 b where a.userid=b.userid
userid username address
----------- -------------------- --------------------
1 A D
2 B E
3 C F
(所影响的行数为 3 行)
userid username address
----------- -------------------- --------------------
1 A D
2 B E
3 C F
(所影响的行数为 3 行)
Top
2 楼scmail81(琳·风の狼(修罗))回复于 2006-03-04 20:41:57 得分 13
1.
update Table_A set Address=B.Address
from Table_A A,Table_B B
where A.userid=B.userid
2.
select A.username,B.Address
from Table_A A,Table_B B
where A.userid=B.useridTop
3 楼wgsasd311(自强不息)回复于 2006-03-04 20:42:48 得分 12
/*问题一:请写出一条SQL语句,目的是将Table_B和Table_A比较,如果userid相同,
就把Table_B中Address的值写到Table_A的字段Address里。*/
update a set address=b.address
from table_a a ,table_b b where a.userid=b.userid
/*问题二:请写出一条SQL语句,目的是将Table_B和Table_A比较,如果userid相同,
就把Table_A中的username的值、Table_B中的Address的值读出来。*/
select a.username,b.address
from table_a a ,table_b b where a.userid=b.useridTop
4 楼yuyes(无业游民)回复于 2006-03-04 20:53:01 得分 0
TO:samfeng_2003(凤翼天翔)
你跟我一样,想的太复杂了,晕Top




