一个表里查出一个接收方账号和一个发送方账号,在另外一个表里有所有的接收方和发送方的账号和名称,当然接收方和发送方可能是一个账号的,我现在要做的事查出发送方账号,发送方名称,接收方账号,接收方名称,这样一行显示,就是在这个表里查出接收方账号与另外那个表的账号一样是将名称匹配,同理还有发送方,谢谢各位了,我这写了好多就是实现不了;数据库sql关联查询oracle数据库sql查询

解决方案 »

  1.   

    这样说吧,两个表a和b,a有cc和dd字段,b有ee和ff字段,ee可能等于cc也可能等于dd,现在要选出cc,dd,ff这三个字段从这两个表,ee=cc时,ff定义为gg,ee=dd时,ff定义为hh,就这样选出来一列
      

  2.   

    这样说吧,两个表a和b,
    a有cc(发送账号)和dd(接收账号)字段,
    b有ee(任意账号)和ff(账号名称)字段,
    查出发送方账号,发送方名称,接收方账号,接收方名称,这样一行显示,select a.cc, 
           (select ff from b where b.ee = a.cc and rownum <= 1) gg,
           a.dd,
           (select ff from b where b.ee = a.dd and rownum <= 1) hh
      from a 
        where ......;