多个记录加入一个记录

问题描述:

我现在有两个相关的表:多个记录加入一个记录

Property 
    ID 
    Name 

Checks 
    ID 
    Property 
    Type 
    ExpiresOn 

Checks表中的属性字段是指在Property表中的ID。

现在有不同类型的检查,在这个例子中,我将坚持:煤气和电力。因此,一个典型的Checks表将是这个样子:

ID Property Type  ExpiresOn 
---------------------------------------- 
1  1  Gas   20/07/13 
2  1  Gas   21/07/13 
3  1  Electric 22/07/13 
4  2  Electric 23/07/13 

现在我想的事,就是显示性能,具有显示最后检查各类型的列。例如:

ID Property.Name GasExpiry  ElectricExpiry 
-------------------------------------------------- 
1  Some Place  21/07/13 (2) 22/07/13 (3) 
2  Another Place null   23/07/13 (4) 

我包括每个到期日的ID括号所以它更容易看到正在发生的事情。带有ID 1的Checks记录未显示,因为它不是该特定属性的最后一种。

现在我正在使用Dlookup进行此操作,因为未能找到正确的方式来执行此操作。当然,由于Property获得更多记录,Dlookup将开始大幅度减缓此查询。

有没有更好的方法来解决这个问题?

通常情况下,我在发布此信息后找到答案时刻,但如果其他人遇到类似问题,我会将其保留在此处。

答案是做一个交叉表查询。正如问题中所描述的那样。您可以指定列的类型以及您要在每个字段中显示的内容。

您正在寻找的是实际上旋转表,使行成为列和列成为行。

由于您已将此标记为MS访问数据库 - 您可以参考大量可在线获得的教程来完成此任务。