2014-01-07 40 views
1

我在访问中遇到附加查询时遇到问题,它是从交叉表查询中读取的,并且数据始终在更改,数据将被追加的表不会出现在交叉表上,因为那一天没有数据,并且如果源字段,交叉表字段不存在,我需要向该字段附加0,因此查询将停止提供我错误,而是追加0当源字段不存在时将值添加到追加字段,Access 2010

回答

1

让我们说你有,你要交叉进行日常数据的表格:

ID EventDate EventValue 
1 08/01/2014 10 
2 06/01/2014 10 
3 03/01/2014 10 
4 02/01/2014 10 
5 08/01/2014 10 

而且对CRO SSTAB:

TRANSFORM Sum(Table2.EventValue) AS SumOfEventValue 
SELECT Table2.ID 
FROM Table2 
GROUP BY Table2.ID 

PIVOT Format([EventDate],"ddd") 

你会注意到,星期二然而丢失,如果添加IN语句:

In ("Mon","Tue","Wed","Thu","Fri"); 

周二将显示,那就是:

TRANSFORM Sum(Table2.EventValue) AS SumOfEventValue 
SELECT Table2.ID 
FROM Table2 
GROUP BY Table2.ID 
PIVOT Format([EventDate],"ddd") In ("Mon","Tue","Wed","Thu","Fri"); 

你可以对任何固定的数据使用这个想法。它还允许您以特定顺序显示列。

请注意,如果您省略了列头,即使数据存在,也不会显示数据。

crosstab with column heads