假设有A、B两张表
A表数据如下    ID        DATE           A3     A4    A5
               1         2011/12/01
               1         2011/12/02
               1         2011/12/03
               2         2011/12/01
               2         2011/12/02B表数据如下    ID         DATE          B3     B4     B5
               1         2011/12/01
               1         2011/12/02
               2         2011/12/01
               2         2011/12/02
               2         2011/12/03
现在要求取出A表所有数据外加B表中ID=2  DATE=2011/12/03的数据,检索条件给定日期范围 
谢谢高手帮忙。             

解决方案 »

  1.   

    SELECT * 
    FROM A 
    UNION 
    SELECT * 
    FROM B
      

  2.   


    select * from a
    union all
    select * from b where id = 2 and date = '2011-12-03'
      

  3.   

    select * from a 
    union all
    select * from b where ID=2 DATE='2011/12/03'
      

  4.   

    SELECT ISNULL(A.ID,B.ID) AS ID
     ,ISNULL(A.DATE,B.DATE) AS DATE
     ,ISNULL(A.A3,B.B3) AS A3
     ,ISNULL(A.A4,B.B4) AS A4
     ,ISNULL(A.A5,B.B5) AS A5
    FROM A 
    FULL JOIN B
    ON A.ID = B.ID AND A.DATE = B.DATE
    WHERE ISNULL(A.DATE,B.DATE) BETWEEN '2011-12-1' AND '2011-12-31'
      

  5.   

    select * from a
    union all
    select * from b where id = 2 and date = '2011-12-03'这样吗?
      

  6.   

    不好意思,A表和B表的两个日期字段不同名,A表DATE  B表WORK_DATE  
    select * from a 
    union all
    select * from b where ID=2 DATE='2011/12/03'
    这样查不出来啊!要查出A表所有数据5条,加上B表中ID=2 and WORK_DATE='2011/12/03'这条数据
      

  7.   

    假设有A、B两张表
    A表数据如下 ID DATE A3 A4 A5
      1 2011/12/01
      1 2011/12/02
      1 2011/12/03
      2 2011/12/01
      2 2011/12/02B表数据如下 ID DATE B3 B4 B5
      1 2011/12/01
      1 2011/12/02
      2 2011/12/01
      2 2011/12/02
      2 2011/12/03
    现在要求取出A表所有数据外加B表中ID=2 DATE=2011/12/03的数据,检索条件给定日期范围  
    谢谢高手帮忙。
    不好意思,A表和B表的两个日期字段不同名,A表DATE B表WORK_DATE   
    select * from a  
    union all
    select * from b where ID=2 DATE='2011/12/03'
    这样查不出来啊!要查出A表所有数据5条,加上B表中ID=2 and WORK_DATE='2011/12/03'这条数据
      

  8.   

    去试试2楼的吧!小爱的条件之间没有加 and 自己加上看。
      

  9.   

    select * from a 
    union all
    select * from b where ID=2 and WORK_DATE='2011/12/03'