如何加入两个表与日期比较?

时间:2009-08-05 11:03:42

标签: ms-access

使用Access 2003

表1

Personid Date1

101     02-02-2008
102     02-02-2008
103     02-02-2008
101     03-02-2008
102     03-02-2008
103     03-02-2008
101     04-02-2008
102     04-02-2008
103     04-02-2008

所以......,

表2

Personid Date1 Name Title

101      03-02-2008 Raja Accountant
102      04-02-2008 Ravi Supervisor
103      02-02-2008 Ram Manager

所以......,

我想显示table1中的所有personid,date1和表2中的名称,标题,其中table2.date1 = table1.date

预期产出:

Personid Date1 Name Title

101     02-02-2008  
102     02-02-2008
103     02-02-2008 Ram Manager
101     03-02-2008 Raja Accountant
102     03-02-2008 
103     03-02-2008
101     04-02-2008 
102     04-02-2008 Ravi Supervisor
103     04-02-2008

所以......,

如何查询上述预期输出。

需要查询帮助

2 个答案:

答案 0 :(得分:4)

SELECT 
    Table1.personid, 
    Table1.date1, 
    Table2.name, 
    Table2.title
FROM Table1 
    LEFT JOIN Table2 ON Table1.date1 = Table2.date1
        AND Table1.personid = Table2.personid;

与mik类似,但最后的AND是必要的,否则它将名称和标题应用于不属于的行

答案 1 :(得分:0)

SELECT Table1.personid, Table1.date1, Table2.name, Table2.title
FROM Table1 LEFT JOIN Table2 ON Table1.date1=Table2.date1;

此查询应该有效