第一张表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文我该怎么写分不多 不好意思

解决方案 »

  1.   

    select * from ta 
    left outer join  tb on ta.a1=tb.b1 and ta.a2=tb.b2 and ta.a3=tb.b3
    union
    select * from ta 
    right outer join  tb on ta.a1=tb.b1 and ta.a2=tb.b2 and ta.a3=tb.b3
      

  2.   

    select t1.*,t2.* from t1 
    full join t2 
    on t1.id = t2.id
      

  3.   

    eduxh(翔)的方法不行  不过还是感谢
      

  4.   

    full join,哈哈,第一次知道可以这样
      

  5.   

    我的怎么不行了,得出的结果确实是你描述的一样当然下面的用full join 的方法才更好,但结果是一样的啊
      

  6.   

    eduxh(翔)兄
    b表没有的数据没有空行显示
      

  7.   

    union可能把一些重复项去重了还是用full join 啦