select 名字,DateA, a1, a2, DateB, B1, B2, DateC, C1 ,C2, C3 from A1,B1,C1 where Datea between startime and endtime or DataB between startime and endtime or DataC
between startime and endtime 你试试??

解决方案 »

  1.   

    SELECT A1.Name,DateA,a1,a2,DateB,B1,B2,DateC,C1,C2,C3  
    FROM A1 
    FULL JOIN B1 ON A1.Name = B1.Name AND A1.DateA = B1.DateB
    FULL JOIN C1 ON B1.Name = C1.Name AND B1.DateB = C1.DateC没有测试过。
      

  2.   

    select Name as 名字, DateA ,a1,a2,null,null,null,null,null,null, nullfrom a1
    union
    select Name,null,null,null,Dateb,b1,b2,null,null,null,null from b1
    union
    select Name,null,null,null,null,null,null,Datec ,c1,c2,c3 from c1
      

  3.   

    楼上的兄弟,谢谢你,但有一个问题,就是在C表中。同一个名字同一天,有两件事情的时候,在A或B表中,有一件事情的时候,会同时在A或B出现两条相同的记录,还是不行,我也不知为什会这样.
      

  4.   

    SELECT ISNULL(ISNULL(A1.Name,B1.Name),C1.Name) Name,ISNULL(ISNULL(DateA,DateB),DateC) Date,a1,a2,B1,B2,C1,C2,C3  
    FROM A1 
    FULL JOIN B1 ON A1.Name = B1.Name 
    FULL JOIN C1 ON B1.Name = C1.Name
      

  5.   

    你想用報表列印出來,那用水晶報表非常方便,就不用寫很複雜的sql server語句了