两个表,如下:
A表:
  Ano  Atype  Aname Anum
  10    0      a     20
  1001  0      b     10
  21    1      f      4
  754   0      d      3
B表:
  Bno  Atype  Bfare  
  10    0      150
  754   0      30
  1001  0      85如何通过SQL语句实现查询,结果如下:
   Ano  Atype  Aname Anum  Bfare
   10    0      a     20    150
   1001  0      b     10    85
   21    1      f      4    0
   754   0      d      3    30即在A表中的数据如果在B表中存在,查出Bfare的值,否则Bfare为0
请高手给以解答下。谢谢

解决方案 »

  1.   

    select a.*,isnull(b.Bfare,0) as Bfare from A a 
    left join B b on b.Bno = a.Ano
      

  2.   

    select a.*,isnull(b.Bfare,0) as Bfare from A a 
    left join B b on b.Bno = a.Ano
      

  3.   

    select A.* , Bfare = isnull(B.Bfare,0) from A left join B on A.Ano = B.Bno AND A.Atype = B.Atype
      

  4.   


    select a.*,Bfare=isnull(b.Bfare,0) from A left join B  on b.Bno = a.Ano
      

  5.   

    select ano,atype,aname,isnull(bfare,0) as bfare
    from a left join b
    on a.ano=b.bno
      

  6.   

    select a.*,Bfare=isnull(b.Bfare,0) from A left join B  on b.Bno = a.Ano
      

  7.   

    select A.* , Bfare = isnull(B.Bfare,0) from A left join B on A.Ano = B.Bno AND A.Atype = B.Atype
      

  8.   

    select A.* , Bfare = isnull(B.Bfare,0) from A left join B on A.Ano = B.Bno AND A.Atype = B.Atype