日期:2014-05-18 浏览次数:20596 次
select isnull(A.学号,B.学号) 学号,isnull(A.分数,0) 原A分数,isnull(B.分数,0) B分数 from A full join B on A.学号=B.学号
------解决方案--------------------
select ISNULL(A.id,B.Id) 学号 ,ISNULL(A.score,0) 原A分数,ISNULL(B.score,0)原B分数 from A full join B on A.id = B.Id
自己建表测试的。。绝对正确。。给满分吧。。
------解决方案--------------------
CREATE TABLE A
(
学号 VARCHAR(10) PRIMARY KEY,
分数 INT
)
INSERT INTO A VALUES('001',100)
INSERT INTO A VALUES('003',99)
INSERT INTO A VALUES('005',98)
INSERT INTO A VALUES('007',97)
CREATE TABLE B
(
学号 VARCHAR(10) PRIMARY KEY,
分数 INT
)
INSERT INTO B VALUES('001',100)
INSERT INTO B VALUES('002',88)
INSERT INTO B VALUES('003',80)
INSERT INTO B VALUES('005',98)
SELECT ISNULL(A.学号,B.学号)学号
,ISNULL(A.分数,0) 原A分数,ISNULL(B.分数,0) B分数 FROM A FULL JOIN B ON A.学号=B.学号
/*
学号 原A分数 B分数
---------- ----------- -----------
001 100 100
002 0 88
003 99 80
005 98 98
007 97 0
(所影响的行数为 5 行)
*/