select 表A.*,表C.date,表B.Fnumber from 表A left join 表C on 表A.CusID=表C.CusID left join 表B on 表C.Date=表B.Date

解决方案 »

  1.   

    declare @a table(a int,b int)
    declare @b table(a int,b int)
    insert @a values(1,1)
    insert @a values(2,2)
    insert @b values(1,1)
    insert @b values(3,3)--左:
    select * from @a Aa left join @b Bb on Aa.a=Bb.a
    --右:
    select * from @a Aa right join @b Bb on Aa.a=Bb.a
    --内
    select * from @a Aa join @b Bb on Aa.a=Bb.a
    --外
    select * from @a Aa full join @b Bb on Aa.a=Bb.a
    --完全
    select * from @a,@b
      

  2.   

    select a.cusID,a.cusName,c.[date],b.fnumber
    from a left join c on a.cusID=c.cusId
    left join b on c.[date]=b.[date]
      

  3.   

    select 表A.*,表C.date,表B.Fnumber 
    from 表A left join 表C on 表A.CusID=表C.CusID 
    left join 表B on 表C.Date=表B.Date
      

  4.   

    select a.* ,c.date,b.fumber
    from 表A left join 表c c on a.CusID=b.CusID
    left join 表B on c.date=b.date
      

  5.   

    还有怎样用select生成a single large table 包含了上面所有的table(a suitable join of all tables)?
      

  6.   

    还有可不可以不用join解决原来的问题?
      

  7.   

    select 表A.*,表C.date,表B.Fnumber into #临时表 from 表A left join 表C on 表A.CusID=表C.CusID left join 表B on 表C.Date=表B.Dateselect * form #临时表drop table #临时表
    ???
      

  8.   

    select *,
    (select date from 表C where 表A.CusID=表C.CusID) date,
    (select Fnumber from 表B where Date=(select date from 表C where 表A.CusID=表C.CusID))
    from 表A
      

  9.   

    最后一个语句对吗?SQL报错。服务器: 消息 512,级别 16,状态 1,行 1
    子查询返回的值多于一个。当子查询跟随在 =、!=、<、<=、>、>= 之后,或子查询用作表达式时,这种情况是不允许的。