日期:2014-05-18  浏览次数:20469 次

我要分别搜索两张不同表的3个子段,SQL的问题,请指教
第一张表3个字段:A1,B1,C1
第二张表3个字段:A2,B2,C2

搜索这6个字段出来
A1,B1,C1,A2,B2,C2
放进Dataset当中

我需要的结果是
当   任意2张表的字段值不同就空行

数据例子是这样的:

A1     B1     C1     A2     B2     C2
1       1       1       1       1       1
1       1       2       1       1       2
1       1       3       空 空 空
1       2       1       1       2       1
空 空 空     1       2       2
空 空     空     1       2       3
2       1       1       2       1       1
2       1       2     空 空 空  

搜索出来有6列,前3列来自一张表,后三列来自一张表
前三列的在后三列中没有,则   空行
后三列在前三列中没有,则空行

这就是数据例子   不知道大家看懂了没有
请问SQL文我该怎么写


不好意思     小弟分不多了


------解决方案--------------------
create table t1(A1 int ,B1 int,C1 int)
insert into t1(A1,B1,C1)
select 1,2,1 union
select 1,1,1 union
select 2,1,1

create table t2(A2 int ,B2 int,C2 int)
insert into t2(A2,B2,C2)
select 1,2,1 union
select 1,2,2 union
select 2,2,1

select A1,B1,C1,A2,B2,C2
FROM t1
FULL JOIN t2
ON t1.A1 = t2.A2 AND t1.B1 = t2.B2 AND t1.C1 = t2.C2

drop table t1
drop table t2
------解决方案--------------------
是不是这个意思?
------解决方案--------------------
select * from t1 full join t2 on t1.a1=t2.a2 and t1.b1=t2.b2 and t1.c1=t2.c2