求SQL server SQL语句

表1
code name bj
zs 张三 一班
ls 李四 一班

表二
code name bm
zs 张三 计划科
ww 王五 会计科

我想得到结果是
code name bj bm
zs 张三 一班 计划科
ls 李四 一班
ww 王五 会计科

请问这个SQL语句怎么写

问过的吧
SELECT ISNULL(A.CODE,B.CODE),ISNULL(A.NAME,B.NAME),ISNULL(A.BJ,''),ISNULL(B.BM,'')
FROM 表1 A FULL OUTER JOIN 表2 B
ON A.CODE=B.CODE
温馨提示:内容为网友见解,仅供参考
第1个回答  2010-12-30
select t1.code, t1.name, t1.bj, t2.bm
from table1 t1, table2 t2
where t1.code=t2.code and t1.name = t2.name

如果code是唯一标识,那么where中只需要code相同的可以了
第2个回答  2010-12-30
select 表1.code,表1.name,表1.bj,表2.bm from 表1 fulljoin 表2 on 表1.code=表2.code
第3个回答  2010-12-30
用全连接full join
SELECT CASE WHEN 表1.code IS NULL THEN 表2.code ELSE 表1.code END,
CASE WHEN 表1.name IS NULL THEN 表2.name ELSE 表1.name END,
表1.bj,
表二.bm
FROM 表1 FULL JOIN ON 表1.code = 表2.code
AND 表1.name = 表2.name
第4个回答  2010-12-30
SELECT ISNULL([表1].code,[表2].code) code
, ISNULL([表1].name,[表2].name) name
, bj, bm
FROM [表1]
FULL OUTER JOIN [表二]
ON [表1].code = [表二].code

在Select中的 ISNULL([表1].code,[表2].code) code 表示 ,当[表1].code值为NULL时,则显示[表2].code值,其它的类似

FULL OUTER JOIN 是全外连接,就是取二者并集

参考资料:SQL Server查询

第5个回答  2010-12-30
select a1.code,a1.name,a1.bj,b1.bm from 表1 a1,表2 b1 where a1.code = b1.code;
相似回答
大家正在搜