可以把表显示成这样吗a.a   b    c    b.a   e      f
编号 型号  厂家  编号  数量   金额 如果bbb表里的没有这个数据的话  e显示为0 F显示为0 如果用select a.a,a.b,a.c,b.a,b.e,b.f from aaa a,bbb b where a.a = b.a话,bbb表里,如果没有数据的话,aaa表里的数也不显示了。希望大家能给个实例!  在这先谢了!!!

解决方案 »

  1.   

    elect a.a,a.b,a.c,b.a,b.e,b.f from aaa a Left Join bbb b on a.a = b.a
      

  2.   

    select a.a,
           a.b,
           a.c,
           b.a,
           b.e,
           b.f 
    from bbb b 
    inner join aaa a on a.a = b.a
      

  3.   

    b.e和b.f
    换成
    isnull(b.e,0),isnull(b.f,0)
      

  4.   

    如果bbb表里的没有这个数据的话  e显示为0 F显示为0 select a.a,
           a.b,
           a.c,
           b.a,
           isnull(b.e,0) as e,
           isnull(b.f,0) as f
    from aaa a
    inner join bbb b on a.a = b.a
      

  5.   

    select a.a,a.b,a.c,case b.e when null then 0 else b.e end,case b.f when null then 0 else .f end from a left outer join b on a.a=b.a
      

  6.   

    用left join绝对可以解决问题,具体怎么能使 e显示为0 F显示为0 ,这就要根据你数据库的不同选择不同的函数了。
      

  7.   

    select a.a,a.b,a.c,isnull(b.e,0) as e,isnull(b.f,0) as f from aaa a left outer join bbb b on   a.a = b.a order by a.a    提示 用于函数参数的个数不对,在查询表达式'isnuss(b.e,0)'中 
      

  8.   

    select a.a,a.b,a.c,case when b.e is null then 0 else b.e end,case when b.f is null then 0 else .f end from a left outer join b on a.a=b.a
    我上面写错了,不好意思。
      

  9.   

    不要把这里的语句完全粘贴过去,贴过去很可能就变了,看ISNULL的帮助,根据提示把对应的参数添写进去。
      

  10.   

    select a.a,a.b,a.c,b.a,ib.e,b.f from aaa a
    left join bbb b where a.a = b.a
    这个应该可以解决了
    我是清晨,记着给我分