我无法在 Access 中进行简单的查询,可能是主键的问题

I can't make an easy query in Access, maybe problems with primary key

我有一个包含列 (29) 的 table,其中 FrontID 是主键,但我还有另外 10 个 table(每个只有 4 列)也有 FrontID列,但除此之外还有另一个名为 Desc1、Desc2 ... Desc10 的字段,我想要的是用其他 10 DescX 列填充第一个 table,这样只有当两行具有相同的 FrontID 时才会出现。

所有 tables 都是 .csv 格式,所以我在 Access 中创建了 tables 并在 .csv 中收费但是当我试图查询到综合了所有的信息,我得不到我想要的,我认为问题是我没有关联tables..

换句话说,我尝试创建一个包含 39 列 (29 + 10) 的 table 以查看当我导入 .csv 和 DescX 字段时它们是否可以加载,但它没有用。

知道如何解决这个问题吗?

例如。更大的 .csv 文件:

DDATE   xxx xxx FRONT_ID    xxx xxx xxx xxx     xxxxxx      xxx xxx xxx xxx     xxx  xxx    CCY xxx xxx xxx xxx xxx xxx xxx xxx xxx xxxxxx  xxx xxx xxx  xxx        xxx xxx xxx 

另外 10 个 .csv 是这样的:

DDATE   FRONT_ID    Desc1  xxx      xxx 

所以我想要第一个 table 与新的 Desc1 colum 当 FRONT_ID 在原始 table(更大)和新的 table 中相同时。

提前致谢, 劳尔

好的,我认为这是一个更好的例子:

我有 3 个 table 例如:

    Main Table  |    TABLE 2           |     TABLE 3

 ID     Name    |    ID     Surname    |    ID   Phone

 1      Jhon    |     1      Surname1  |    1   666-555-444
 2      Mark    |     2      Surname2  |    5   777-777-777
 3      Susan   |     3      Surname3  |    6   123-456-789
 4      Peter   |
 5      Yod     |
 6      Samuel  |

而我想要得到的是类似这样的:

FINAL TABLE

ID  Name    Surname     Phone

1   Jhon    Surname1    666-555-444
2   Mark    Surname2    
3   Susan   Surname3    
4   Peter       
5   Yod                 555-444-333
6   Samuel              444-333-222

我尝试这样的事情:

SELECT Table1.ID, Table1.Name, Table2.Surname, Table3.Phone AS Expr1
FROM Table1, Table2, Table3
WHERE Table2.ID=Table1.ID OR  Table3.ID=Table1.ID

我也尝试使用 INNER JOIN 进行查询,但我的结果很糟糕,我不知道为什么:

1   Jhon    Surname1    666-555-444

有人可以帮助我吗?也许我需要写一些宏来在主 table 上添加新列? 你们都可以看到我是 Access 中的新手,所以我也很喜欢一些教程或一个不错的页面来阅读。

此致, 劳尔

你说你使用了内部连接的例子。这几乎是正确的方法:只需将 INNER JOIN 替换为 LEFT JOIN。 (使用您在问题中未看到的陈述查询)

内部联接表示它必须在主和其他两个 table 中都有一个条目。如果您使用左连接(Left on main table),即使 Table 2 或 3 中没有条目,您也会看到来自 Main Table 的条目。

另见此处http://www.w3schools.com/sql/sql_join_left.asp