在源字段不存在时向附加字段添加值Access 2010

时间:2014-01-07 15:36:34

标签: sql ms-access

我在访问中遇到附加查询的问题,并且它是从交叉表查询读取的,并且数据总是在变化,有时表中数据将附加的字段不会出现在交叉表上,因为这样做特殊的日子那里没有数据,如果源字段,交叉表字段不存在,我需要在字段中追加0,这样查询就会停止给我错误,而是添加0。

1 个答案:

答案 0 :(得分: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

和交叉表:

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

PIVOT Format([EventDate],"ddd") 

但是,如果添加IN语句,则会注意到Tue缺失:

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