继续数据here,有没有办法添加其他列,例如,我有下表:
Date Quantity Type Cost Date_Entered
01/02/15 23 Orange 452 10/01/15
01/02/15 10 Red 287 10/01/15
01/02/15 18 Yellow 315 10/01/15
02/02/15 15 Yellow 299 10/01/15
02/02/15 19 Red 320 10/01/15
. . . . .
. . . . .
日期是预计销售的日历日期,数量是销售数量,类型是产品类型(这可能因类型数量而异),成本是产品的总销售额,Date_Entered是日期将数据放入表中并给出其他列的预测。对于每个Date_Entered,都有日期范围(比如整个2015)。对于每个日期,每种类型都可用。
我的想法是采用这种布局:
Date Orange Orange ($) Red Red ($) Yellow Yellow ($)
01/02/15 3 60 2 35 5 100
02/02/15 0 0 -2 -35 -1 -23
03/02/15 8 115 -1 -20 3 55
. . . . . . .
. . . . . . .
如果值是特定日期的销售数量从一个Date_Entered到另一个Date_Entered之间的差异(例如,一周,一个月,一个季度的预计销售额的变化)。
现在,在本文顶部的链接中,已建立查询以在两个表中获取这些值(一个表包含数量,另一个表包含“成本”)。但是,我很难看到如何使用MS Access SQL将它们组合成上面结果的一个查询。 TRANSFORM ... PIVOT只能在一列上运行,而SELECT似乎无法将枢轴结果作为子查询处理。是否更容易将两个表都输出到Excel中,然后只将列与VBA混合在一起?
此外,为每种类型设置一个平均列也很好,但我认为这对SQL要求太多了。
感谢您的回复。
答案 0 :(得分:0)
正如您所说,不幸的是,Access中的交叉表只能在一个结果列上运行。
在Access中实现所需功能的一种方法是创建两个“创建表”查询,每个查询包含一个交叉表。重要的是,每个交叉表查询都需要一个唯一的主键(即如果这是日期,那么您必须确保每个交叉表每个日期只有一行)。
将两个交叉表结果作为表格后,您可以使用其他查询和PK字段加入它们。