select A.ID,A.name
from A , B
where B.ID = 1
  and (A.ID = B.AID1 or A.ID = B.AID2 or A.ID = B.AID3);

解决方案 »

  1.   

    一条语不能完成你的要求,你可以先写一个存储函数来返回id所对应的name,设函数名为func1
    你可以用
    select id,func1(aid1),func1(aid2),func1(aid3) from 表b where id=1
      

  2.   

    select a.name
    from a,b
    where b.id=1
     and (a.id=b.aid1 or a.id=b.aid2 or a.id=b.aid3)
      

  3.   

    select a.name from A a,B b where (b.AID1=a.ID or b.AID2=a.ID or b.AID3=a.ID);
      

  4.   

    select a.name from A a,B b where (b.AID1=a.ID or b.AID2=a.ID or b.AID3=a.ID);
      

  5.   

    select id,(select name from a where id=b.AID1),(select name from a where id=b.AID2),(select name from a where id=b.AID3) from b where id=1;
      

  6.   

    select b.id,b.aid1,a1.name aid1_name,a2.name aid2_name,a3.name aid3_name
    from b, a a1, a a2, a a3
    where b.id=1 and b.aid1=a1.id and b.aid2=a2.id and b.aid3=a3.id;